Author: [log in to unmask]
Date: Wed Jan 28 16:18:26 2015
New Revision: 2000
Log:
Simplify and make more clear the ET strip charts. HPSJAVA-340
Modified:
java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/SystemStatistics.java
java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/SystemStatisticsImpl.java
java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/et/EtSystemStripCharts.java
Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/SystemStatistics.java
=============================================================================
--- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/SystemStatistics.java (original)
+++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/SystemStatistics.java Wed Jan 28 16:18:26 2015
@@ -41,7 +41,7 @@
* Get the number of millis since the session started.
* @return The number of millis since session start.
*/
- long getTimeElapsedMillis();
+ long getTotalElapsedMillis();
/**
* Get the Unix start time of the session.
@@ -59,13 +59,13 @@
* Get the number of events in the current tick.
* @return The number of events in the current tick.
*/
- long getEventsInTick();
+ long getEventsReceived();
/**
* Get the total number of events processed thusfar.
* @return The total number of events processed so far.
*/
- long getCumulativeEvents();
+ long getTotalEvents();
/**
* Get the average number of events per second in the session. It simply divides the number of
@@ -78,34 +78,34 @@
* Get the number of bytes received in the current tick.
* @return The number of bytes received in the tick.
*/
- long getBytesInTick();
+ long getBytesReceived();
/**
* Get the total number of megabytes of data received thusfar.
* @return The amount of data in megabytes received in the session.
*/
- double getCumulativeMb();
+ double getTotalMegabytes();
/**
* Get the average Mb per second of the session, which is the total amount of data divided by
* the total time.
* @return The average megabytes per second.
*/
- double getAverageMbPerSecond();
+ double getAverageMegabytesPerSecond();
/**
* Get the immediate event rate which is the number of events received in the current tick over
* the time elapsed in the tick.
* @return The event rate in [events/second].
*/
- double getEventRate();
+ double getEventsPerSecond();
/**
* Get the immediate data rate which is the amount of data in bytes received in the current tick
* over the tim elapsed in the tick.
* @return The data rate in [bytes/second].
*/
- public double getDataRateBytes();
+ public double getBytesPerSecond();
/**
* Get the number of milliseconds since the last tick.
Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/SystemStatisticsImpl.java
=============================================================================
--- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/SystemStatisticsImpl.java (original)
+++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/SystemStatisticsImpl.java Wed Jan 28 16:18:26 2015
@@ -29,7 +29,7 @@
static final long Kb = 1 * 1024;
static final long Mb = Kb * 1024;
static final double milliToSecond = 0.001;
- static final DecimalFormat decimalFormat = new DecimalFormat("#.##");
+ static final DecimalFormat decimalFormat = new DecimalFormat("#.####");
Timer timer;
List<TimerTask> subtasks = new ArrayList<TimerTask>();
@@ -51,7 +51,7 @@
}
@Override
- public long getTimeElapsedMillis() {
+ public long getTotalElapsedMillis() {
return sessionElapsedMillis;
}
@@ -64,52 +64,28 @@
public long getStopTimeMillis() {
return this.stopTimeMillis;
}
-
- @Override
- public long getCumulativeEvents() {
- return totalEvents;
- }
-
- @Override
- public double getAverageEventsPerSecond() {
- try {
- return Double.parseDouble(decimalFormat.format(totalEvents / millisToSeconds(getTimeElapsedMillis())));
- } catch (NumberFormatException e) {
- return Double.NaN;
- }
- }
-
- @Override
- public double getCumulativeMb() {
- return bytesToMb(totalBytes);
- }
-
- @Override
- public double getAverageMbPerSecond() {
- try {
- return Double.parseDouble(decimalFormat.format(bytesToMb(totalBytes) / millisToSeconds(getTimeElapsedMillis())));
- } catch (NumberFormatException e) {
- return Double.NaN;
- }
- }
-
- @Override
- public long getEventsInTick() {
- return eventsSinceTick;
- }
-
- @Override
- public long getBytesInTick() {
- return bytesSinceTick;
- }
-
+
@Override
public long getTickElapsedMillis() {
return tickElapsedMillis;
}
- @Override
- public double getEventRate() {
+ /**
+ * Event statistics.
+ */
+
+ @Override
+ public long getEventsReceived() {
+ return eventsSinceTick;
+ }
+
+ @Override
+ public long getTotalEvents() {
+ return totalEvents;
+ }
+
+ @Override
+ public double getEventsPerSecond() {
if (eventsSinceTick > 0 && tickElapsedMillis > 0)
return (double) eventsSinceTick / millisToSeconds(tickElapsedMillis);
else
@@ -117,7 +93,39 @@
}
@Override
- public double getDataRateBytes() {
+ public double getAverageEventsPerSecond() {
+ try {
+ return Double.parseDouble(decimalFormat.format(totalEvents / millisToSeconds(getTotalElapsedMillis())));
+ } catch (NumberFormatException e) {
+ return 0;
+ }
+ }
+
+ /**
+ * Data statistics.
+ */
+
+ @Override
+ public long getBytesReceived() {
+ return bytesSinceTick;
+ }
+
+ @Override
+ public double getTotalMegabytes() {
+ return bytesToMb(totalBytes);
+ }
+
+ @Override
+ public double getAverageMegabytesPerSecond() {
+ try {
+ return Double.parseDouble(decimalFormat.format(bytesToMb(totalBytes) / millisToSeconds(getTotalElapsedMillis())));
+ } catch (NumberFormatException e) {
+ return Double.NaN;
+ }
+ }
+
+ @Override
+ public double getBytesPerSecond() {
if (bytesSinceTick > 0 && tickElapsedMillis > 0)
return (double) bytesSinceTick / millisToSeconds(tickElapsedMillis);
else
@@ -163,10 +171,10 @@
@Override
public void printSession(PrintStream ps) {
ps.println("session statistics ...");
- ps.println(" timeElapsedMillis = " + this.getTimeElapsedMillis());
- ps.println(" cumulativeEvents = " + this.getCumulativeEvents());
+ ps.println(" timeElapsedMillis = " + this.getTotalElapsedMillis());
+ ps.println(" cumulativeEvents = " + this.getTotalEvents());
ps.println(" averageEventsPerSecond = " + this.getAverageEventsPerSecond());
- ps.println(" averageMegaBytesPerSecond = " + this.getAverageMbPerSecond());
+ ps.println(" averageMegaBytesPerSecond = " + this.getAverageMegabytesPerSecond());
}
@@ -174,8 +182,8 @@
public void printTick(PrintStream ps) {
ps.println("tick statistics ...");
ps.println(" tickElapsedMillis = " + this.getTickElapsedMillis());
- ps.println(" eventsSinceTick = " + this.getEventsInTick());
- ps.println(" bytesSinceTick = " + this.getBytesInTick());
+ ps.println(" eventsSinceTick = " + this.getEventsReceived());
+ ps.println(" bytesSinceTick = " + this.getBytesReceived());
}
@Override
@@ -213,70 +221,79 @@
tickElapsedMillis = 0;
tickStartMillis = System.currentTimeMillis();
}
-
+
public abstract class SystemStatisticsUpdater extends StripChartUpdater {
SystemStatisticsUpdater() {
addSubTask(this);
}
}
-
- public class AverageEventRateUpdater extends SystemStatisticsUpdater {
+
+ public class AverageEventsPerSecondUpdater extends SystemStatisticsUpdater {
@Override
public float nextValue() {
return (float) getAverageEventsPerSecond();
}
}
-
- public class EventsInTickUpdater extends SystemStatisticsUpdater {
-
- @Override
- public float nextValue() {
- return getEventsInTick();
- }
- }
-
- public class CumulativeEventsUpdater extends SystemStatisticsUpdater {
- @Override
- public float nextValue() {
- return getCumulativeEvents();
- }
- }
-
- public class BytesInTickUpdater extends SystemStatisticsUpdater {
- @Override
- public float nextValue() {
- return getBytesInTick();
- }
- }
-
- public class AverageMbUpdater extends SystemStatisticsUpdater {
- @Override
- public float nextValue() {
- return (float) getAverageMbPerSecond();
- }
- }
-
- public class CumulativeMbUpdater extends SystemStatisticsUpdater {
- @Override
- public float nextValue() {
- return (float) getCumulativeMb();
- }
- }
-
- public class EventRateUpdater extends SystemStatisticsUpdater {
-
- @Override
- public float nextValue() {
- return (float) getEventRate();
- }
- }
-
- public class DataRateUpdater extends SystemStatisticsUpdater {
-
- @Override
- public float nextValue() {
- return (float) getDataRateBytes();
- }
- }
+
+ public class EventsPerSecondUpdater extends SystemStatisticsUpdater {
+
+ @Override
+ public float nextValue() {
+ return (float) getEventsPerSecond();
+ }
+ }
+
+ public class EventsReceivedUpdater extends SystemStatisticsUpdater {
+
+ @Override
+ public float nextValue() {
+ return getEventsReceived();
+ }
+ }
+
+ public class TotalEventsUpdater extends SystemStatisticsUpdater {
+ @Override
+ public float nextValue() {
+ return getTotalEvents();
+ }
+ }
+
+ public class BytesReceivedUpdater extends SystemStatisticsUpdater {
+ @Override
+ public float nextValue() {
+ return getBytesReceived();
+ }
+ }
+
+ public class AverageMegabytesPerSecondUpdater extends SystemStatisticsUpdater {
+ @Override
+ public float nextValue() {
+ return (float) getAverageMegabytesPerSecond();
+ }
+ }
+
+ public class TotalMegabytesUpdater extends SystemStatisticsUpdater {
+ @Override
+ public float nextValue() {
+ return (float) getTotalMegabytes();
+ }
+ }
+
+ public class BytesPerSecondUpdater extends SystemStatisticsUpdater {
+
+ @Override
+ public float nextValue() {
+ return (float) getBytesPerSecond();
+ }
+ }
+
+ public class MegabytesPerSecondUpdater extends SystemStatisticsUpdater {
+ @Override
+ public float nextValue() {
+ return (float) getBytesPerSecond() / 1000000;
+ }
+ }
+
+
}
Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/et/EtSystemStripCharts.java
=============================================================================
--- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/et/EtSystemStripCharts.java (original)
+++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/subsys/et/EtSystemStripCharts.java Wed Jan 28 16:18:26 2015
@@ -14,28 +14,19 @@
SystemStatisticsImpl stats = new SystemStatisticsImpl();
MonitoringPlotFactory plotFactory = (MonitoringPlotFactory) AIDA.defaultInstance().analysisFactory().createPlotterFactory("ET System Monitoring");
+ public EtSystemStripCharts() {
+ stats.setTickLengthMillis(2000);
+ }
+
/**
* Setup the strip charts for ET system monitoring and start accumulating statistics.
*/
@Override
- public void startJob() {
-
- plotFactory.createStripChart("Event Rate", "Event Count", 100, stats.new EventRateUpdater());
-
- plotFactory.createStripChart("Average Event Rate", "Event Count", 100, stats.new AverageEventRateUpdater());
-
- plotFactory.createStripChart("Events in Tick", "Event Count", 100, stats.new EventsInTickUpdater());
-
- plotFactory.createStripChart("Cumulative Events", "Event Count", 100, stats.new CumulativeEventsUpdater());
-
- plotFactory.createStripChart("Data Rate", "Bytes", 100, stats.new DataRateUpdater());
-
- plotFactory.createStripChart("Bytes in Tick", "Bytes", 100, stats.new BytesInTickUpdater());
-
- plotFactory.createStripChart("Average Megabytes", "Megabytes", 100, stats.new AverageMbUpdater());
-
- plotFactory.createStripChart("Cumulative Megabytes", "Megabytes", 100, stats.new CumulativeMbUpdater());
-
+ public void startJob() {
+ plotFactory.createStripChart("Data Rate", "MB / second", 100, stats.new MegabytesPerSecondUpdater());
+ plotFactory.createStripChart("Total Data", "Megabytes", 100, stats.new TotalMegabytesUpdater());
+ plotFactory.createStripChart("Event Rate", "Events / second", 100, stats.new EventsPerSecondUpdater());
+ plotFactory.createStripChart("Total Events", "Number of Events", 100, stats.new TotalEventsUpdater());
stats.start();
}
@@ -48,4 +39,4 @@
public void endJob() {
stats.stop();
}
-}
+}
|