You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by wo...@apache.org on 2005/01/07 05:20:10 UTC
cvs commit: jakarta-jmeter/src/monitor/components/org/apache/jmeter/visualizers MonitorAccumModel.java MonitorStats.java MonitorModel.java
woolfel 2005/01/06 20:20:10
Modified: src/monitor/components/org/apache/jmeter/visualizers
MonitorAccumModel.java MonitorStats.java
MonitorModel.java
Log:
made changes to the monitor stats can be saved to a file.
peter
Revision Changes Path
1.7 +16 -3 jakarta-jmeter/src/monitor/components/org/apache/jmeter/visualizers/MonitorAccumModel.java
Index: MonitorAccumModel.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/monitor/components/org/apache/jmeter/visualizers/MonitorAccumModel.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- MonitorAccumModel.java 20 Mar 2004 20:36:37 -0000 1.6
+++ MonitorAccumModel.java 7 Jan 2005 04:20:10 -0000 1.7
@@ -36,7 +36,11 @@
{
private HashMap MAP;
- //private MonitorModel CURRENT;
+ /**
+ * we use this to set the current monitorModel so that
+ * we can save the stats to the resultcolllector.
+ */
+ private MonitorModel CURRENT;
private List listeners;
/**
* By default, we set the default to 800
@@ -61,13 +65,22 @@
}
/**
+ * Added this method we that we can save the calculated
+ * stats.
+ * @return
+ */
+ public MonitorModel getLastSample(){
+ return this.CURRENT;
+ }
+
+ /**
* Method will look up the server in the map. The
* MonitorModel will be added to an existing list,
* or a new one will be created.
* @param model
*/
public void addSample(MonitorModel model){
- //this.CURRENT = model;
+ this.CURRENT = model;
if (MAP.containsKey(model.getURL())){
List newlist = updateArray(model,(List)MAP.get(model.getURL()));
MAP.put(model.getURL(),newlist);
1.4 +96 -21 jakarta-jmeter/src/monitor/components/org/apache/jmeter/visualizers/MonitorStats.java
Index: MonitorStats.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/monitor/components/org/apache/jmeter/visualizers/MonitorStats.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- MonitorStats.java 13 Mar 2004 23:16:07 -0000 1.3
+++ MonitorStats.java 7 Jan 2005 04:20:10 -0000 1.4
@@ -18,18 +18,20 @@
import java.io.Serializable;
-public class MonitorStats implements Serializable
+import org.apache.jmeter.testelement.AbstractTestElement;
+
+public class MonitorStats extends AbstractTestElement implements Serializable
{
- public int health;
- public int load;
- public int cpuload;
- public int memload;
- public int threadload;
- public String host;
- public String port;
- public String protocol;
- public long timestamp;
+ public static String HEALTH = "stats.health";
+ public static String LOAD = "stats.load";
+ public static String CPULOAD = "stats.cpuload";
+ public static String MEMLOAD = "stats.memload";
+ public static String THREADLOAD = "stats.threadload";
+ public static String HOST = "stats.host";
+ public static String PORT = "stats.port";
+ public static String PROTOCOL = "stats.protocol";
+ public static String TIMESTAMP = "stats.timestamp";
/**
*
@@ -60,15 +62,15 @@
String port,
String protocol,
long time){
- this.health = health;
- this.load = load;
- this.cpuload = cpuload;
- this.memload = memload;
- this.threadload = threadload;
- this.host = host;
- this.port = port;
- this.protocol = protocol;
- this.timestamp = time;
+ this.setHealth(health);
+ this.setLoad(load);
+ this.setCpuLoad(cpuload);
+ this.setMemLoad(memload);
+ this.setThreadLoad(threadload);
+ this.setHost(host);
+ this.setPort(port);
+ this.setProtocol(protocol);
+ this.setTimeStamp(time);
}
/**
@@ -77,6 +79,79 @@
* @return protocol://host:port
*/
public String getURL(){
- return protocol + "://" + host + ":" + port;
+ return this.getProtocol() + "://" +
+ this.getHost() + ":" + this.getPort();
+ }
+
+ public void setHealth(int health){
+ this.setProperty(HEALTH,String.valueOf(health));
+ }
+
+ public void setLoad(int load){
+ this.setProperty(LOAD,String.valueOf(load));
+ }
+
+ public void setCpuLoad(int load){
+ this.setProperty(CPULOAD,String.valueOf(load));
+ }
+
+ public void setMemLoad(int load){
+ this.setProperty(MEMLOAD,String.valueOf(load));
+ }
+
+ public void setThreadLoad(int load){
+ this.setProperty(THREADLOAD,String.valueOf(load));
+ }
+
+ public void setHost(String host){
+ this.setProperty(HOST,host);
+ }
+
+ public void setPort(String port){
+ this.setProperty(PORT,port);
+ }
+
+ public void setProtocol(String protocol){
+ this.setProperty(PROTOCOL,protocol);
+ }
+
+ public void setTimeStamp(long time){
+ this.setProperty(TIMESTAMP,String.valueOf(time));
+ }
+
+ public int getHealth(){
+ return this.getPropertyAsInt(HEALTH);
+ }
+
+ public int getLoad(){
+ return this.getPropertyAsInt(LOAD);
+ }
+
+ public int getCpuLoad(){
+ return this.getPropertyAsInt(CPULOAD);
+ }
+
+ public int getMemLoad(){
+ return this.getPropertyAsInt(MEMLOAD);
+ }
+
+ public int getThreadLoad(){
+ return this.getPropertyAsInt(THREADLOAD);
+ }
+
+ public String getHost(){
+ return this.getPropertyAsString(HOST);
+ }
+
+ public String getPort(){
+ return this.getPropertyAsString(PORT);
+ }
+
+ public String getProtocol(){
+ return this.getPropertyAsString(PROTOCOL);
+ }
+
+ public long getTimeStamp(){
+ return this.getPropertyAsLong(TIMESTAMP);
}
}
1.5 +28 -22 jakarta-jmeter/src/monitor/components/org/apache/jmeter/visualizers/MonitorModel.java
Index: MonitorModel.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/monitor/components/org/apache/jmeter/visualizers/MonitorModel.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- MonitorModel.java 20 Mar 2004 22:10:02 -0000 1.4
+++ MonitorModel.java 7 Jan 2005 04:20:10 -0000 1.5
@@ -54,39 +54,39 @@
}
public int getHealth(){
- return this.current.health;
+ return this.current.getHealth();
}
public int getLoad(){
- return this.current.load;
+ return this.current.getLoad();
}
public int getCpuload(){
- return this.current.cpuload;
+ return this.current.getCpuLoad();
}
public int getMemload(){
- return this.current.memload;
+ return this.current.getMemLoad();
}
public int getThreadload(){
- return this.current.threadload;
+ return this.current.getThreadLoad();
}
public String getHost(){
- return this.current.host;
+ return this.current.getHost();
}
public String getPort(){
- return this.current.port;
+ return this.current.getPort();
}
public String getProtocol(){
- return this.current.protocol;
+ return this.current.getProtocol();
}
public long getTimestamp(){
- return this.current.timestamp;
+ return this.current.getTimeStamp();
}
public String getURL(){
@@ -99,7 +99,7 @@
* @return String
*/
public String getTimestampString(){
- Date date = new Date(this.current.timestamp);
+ Date date = new Date(this.current.getTimeStamp());
SimpleDateFormat ft = new SimpleDateFormat();
return ft.format(date);
}
@@ -142,16 +142,22 @@
* cases, it may be desirable to clone the object.
*/
public Object clone(){
- MonitorStats newstats =
- new MonitorStats(current.health,
- current.load,
- current.cpuload,
- current.memload,
- current.threadload,
- current.host,
- current.port,
- current.protocol,
- current.timestamp);
- return new MonitorModel(newstats);
+ return new MonitorModel(cloneMonitorStats());
+ }
+
+ /**
+ * a clone method to clone the stats
+ * @return
+ */
+ public MonitorStats cloneMonitorStats(){
+ return new MonitorStats(current.getHealth(),
+ current.getLoad(),
+ current.getCpuLoad(),
+ current.getMemLoad(),
+ current.getThreadLoad(),
+ current.getHost(),
+ current.getPort(),
+ current.getProtocol(),
+ current.getTimeStamp());
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org