Github user Ethanlm commented on a diff in the pull request:
https://github.com/apache/storm/pull/2764#discussion_r208987159
--- Diff:
storm-server/src/main/java/org/apache/storm/daemon/nimbus/Nimbus.java ---
@@ -4729,4 +4760,192 @@ public IScheduler getForcedScheduler() {
}
+ //enum NotPorted {
+ // //Declared in StormConf. I don't see the value in reporting so.
+ // SUPERVISOR_TOTAL_RESOURCE,
+ // //May be able to aggregate based on status;
+ // TOPOLOGY_STATUS,
+ // TOPOLOGY_SCHED_STATUS,
+ // //May be aggregated, as well as other distinct values
+ // NUM_DISTINCT_NIMBUS_VERSION;
+ //}
+
+ private class ClusterSummaryMetricSet implements MetricSet, Runnable {
+ static final int CACHING_WINDOW = 5;
+ static final int PORTED_METRICS = 25;
+ static final String SUMMARY = "summary";
+
+ private final Map<String, com.codahale.metrics.Metric> ported =
new HashMap<>(PORTED_METRICS);
+ private final Function<String, Histogram> registerHistogram =
(name) -> {
+ final Histogram histogram = new Histogram(new
SlidingTimeWindowReservoir(CACHING_WINDOW / 2, TimeUnit.SECONDS));
+ ported.put(name, histogram);
+ return histogram;
+ };
+ private volatile boolean active = false;
+
+ //NImbus metrics distribution
+ private final Histogram nimbusUptime =
registerHistogram.apply("nimbuses:uptime-secs");
+
+ //Supervisor metrics distribution
+ private final Histogram supervisorsUptime =
registerHistogram.apply("supervisors:uptime-secs");
+ private final Histogram supervisorsNumWorkers =
registerHistogram.apply("supervisors:num-workers");
+ private final Histogram supervisorsNumUsedWorkers =
registerHistogram.apply("supervisors:num-used-workers");
+ private final Histogram supervisorsUsedMem =
registerHistogram.apply("supervisors:used-mem");
+ private final Histogram supervisorsUsedCpu =
registerHistogram.apply("supervisors:used-CPU");
--- End diff --
use lowercase for "CPU" to be consistent with other names?
---