|
@@ -57,6 +57,12 @@ public final class RouterMetrics {
|
|
private MutableGaugeInt numGetClusterMetricsFailedRetrieved;
|
|
private MutableGaugeInt numGetClusterMetricsFailedRetrieved;
|
|
@Metric("# of getClusterNodes failed to be retrieved")
|
|
@Metric("# of getClusterNodes failed to be retrieved")
|
|
private MutableGaugeInt numGetClusterNodesFailedRetrieved;
|
|
private MutableGaugeInt numGetClusterNodesFailedRetrieved;
|
|
|
|
+ @Metric("# of getNodeToLabels failed to be retrieved")
|
|
|
|
+ private MutableGaugeInt numGetNodeToLabelsFailedRetrieved;
|
|
|
|
+ @Metric("# of getNodeToLabels failed to be retrieved")
|
|
|
|
+ private MutableGaugeInt numGetLabelsToNodesFailedRetrieved;
|
|
|
|
+ @Metric("# of getClusterNodeLabels failed to be retrieved")
|
|
|
|
+ private MutableGaugeInt numGetClusterNodeLabelsFailedRetrieved;
|
|
|
|
|
|
// Aggregate metrics are shared, and don't have to be looked up per call
|
|
// Aggregate metrics are shared, and don't have to be looked up per call
|
|
@Metric("Total number of successful Submitted apps and latency(ms)")
|
|
@Metric("Total number of successful Submitted apps and latency(ms)")
|
|
@@ -78,6 +84,12 @@ public final class RouterMetrics {
|
|
private MutableRate totalSucceededGetClusterMetricsRetrieved;
|
|
private MutableRate totalSucceededGetClusterMetricsRetrieved;
|
|
@Metric("Total number of successful Retrieved getClusterNodes and latency(ms)")
|
|
@Metric("Total number of successful Retrieved getClusterNodes and latency(ms)")
|
|
private MutableRate totalSucceededGetClusterNodesRetrieved;
|
|
private MutableRate totalSucceededGetClusterNodesRetrieved;
|
|
|
|
+ @Metric("Total number of successful Retrieved getNodeToLabels and latency(ms)")
|
|
|
|
+ private MutableRate totalSucceededGetNodeToLabelsRetrieved;
|
|
|
|
+ @Metric("Total number of successful Retrieved getNodeToLabels and latency(ms)")
|
|
|
|
+ private MutableRate totalSucceededGetLabelsToNodesRetrieved;
|
|
|
|
+ @Metric("Total number of successful Retrieved getClusterNodeLabels and latency(ms)")
|
|
|
|
+ private MutableRate totalSucceededGetClusterNodeLabelsRetrieved;
|
|
|
|
|
|
/**
|
|
/**
|
|
* Provide quantile counters for all latencies.
|
|
* Provide quantile counters for all latencies.
|
|
@@ -90,6 +102,9 @@ public final class RouterMetrics {
|
|
private MutableQuantiles getApplicationAttemptReportLatency;
|
|
private MutableQuantiles getApplicationAttemptReportLatency;
|
|
private MutableQuantiles getClusterMetricsLatency;
|
|
private MutableQuantiles getClusterMetricsLatency;
|
|
private MutableQuantiles getClusterNodesLatency;
|
|
private MutableQuantiles getClusterNodesLatency;
|
|
|
|
+ private MutableQuantiles getNodeToLabelsLatency;
|
|
|
|
+ private MutableQuantiles getLabelToNodesLatency;
|
|
|
|
+ private MutableQuantiles getClusterNodeLabelsLatency;
|
|
|
|
|
|
private static volatile RouterMetrics INSTANCE = null;
|
|
private static volatile RouterMetrics INSTANCE = null;
|
|
private static MetricsRegistry registry;
|
|
private static MetricsRegistry registry;
|
|
@@ -120,6 +135,18 @@ public final class RouterMetrics {
|
|
getClusterNodesLatency =
|
|
getClusterNodesLatency =
|
|
registry.newQuantiles("getClusterNodesLatency",
|
|
registry.newQuantiles("getClusterNodesLatency",
|
|
"latency of get cluster nodes", "ops", "latency", 10);
|
|
"latency of get cluster nodes", "ops", "latency", 10);
|
|
|
|
+
|
|
|
|
+ getNodeToLabelsLatency =
|
|
|
|
+ registry.newQuantiles("getNodeToLabelsLatency",
|
|
|
|
+ "latency of get node labels", "ops", "latency", 10);
|
|
|
|
+
|
|
|
|
+ getLabelToNodesLatency =
|
|
|
|
+ registry.newQuantiles("getLabelToNodesLatency",
|
|
|
|
+ "latency of get label nodes", "ops", "latency", 10);
|
|
|
|
+
|
|
|
|
+ getClusterNodeLabelsLatency =
|
|
|
|
+ registry.newQuantiles("getClusterNodeLabelsLatency",
|
|
|
|
+ "latency of get cluster node labels", "ops", "latency", 10);
|
|
}
|
|
}
|
|
|
|
|
|
public static RouterMetrics getMetrics() {
|
|
public static RouterMetrics getMetrics() {
|
|
@@ -181,6 +208,21 @@ public final class RouterMetrics {
|
|
return totalSucceededGetClusterNodesRetrieved.lastStat().numSamples();
|
|
return totalSucceededGetClusterNodesRetrieved.lastStat().numSamples();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @VisibleForTesting
|
|
|
|
+ public long getNumSucceededGetNodeToLabelsRetrieved(){
|
|
|
|
+ return totalSucceededGetNodeToLabelsRetrieved.lastStat().numSamples();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @VisibleForTesting
|
|
|
|
+ public long getNumSucceededGetLabelsToNodesRetrieved(){
|
|
|
|
+ return totalSucceededGetLabelsToNodesRetrieved.lastStat().numSamples();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @VisibleForTesting
|
|
|
|
+ public long getNumSucceededGetClusterNodeLabelsRetrieved(){
|
|
|
|
+ return totalSucceededGetClusterNodeLabelsRetrieved.lastStat().numSamples();
|
|
|
|
+ }
|
|
|
|
+
|
|
@VisibleForTesting
|
|
@VisibleForTesting
|
|
public double getLatencySucceededAppsCreated() {
|
|
public double getLatencySucceededAppsCreated() {
|
|
return totalSucceededAppsCreated.lastStat().mean();
|
|
return totalSucceededAppsCreated.lastStat().mean();
|
|
@@ -221,6 +263,21 @@ public final class RouterMetrics {
|
|
return totalSucceededGetClusterNodesRetrieved.lastStat().mean();
|
|
return totalSucceededGetClusterNodesRetrieved.lastStat().mean();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @VisibleForTesting
|
|
|
|
+ public double getLatencySucceededGetNodeToLabelsRetrieved() {
|
|
|
|
+ return totalSucceededGetNodeToLabelsRetrieved.lastStat().mean();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @VisibleForTesting
|
|
|
|
+ public double getLatencySucceededGetLabelsToNodesRetrieved() {
|
|
|
|
+ return totalSucceededGetLabelsToNodesRetrieved.lastStat().mean();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @VisibleForTesting
|
|
|
|
+ public double getLatencySucceededGetClusterNodeLabelsRetrieved() {
|
|
|
|
+ return totalSucceededGetClusterNodeLabelsRetrieved.lastStat().mean();
|
|
|
|
+ }
|
|
|
|
+
|
|
@VisibleForTesting
|
|
@VisibleForTesting
|
|
public int getAppsFailedCreated() {
|
|
public int getAppsFailedCreated() {
|
|
return numAppsFailedCreated.value();
|
|
return numAppsFailedCreated.value();
|
|
@@ -261,6 +318,21 @@ public final class RouterMetrics {
|
|
return numGetClusterNodesFailedRetrieved.value();
|
|
return numGetClusterNodesFailedRetrieved.value();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @VisibleForTesting
|
|
|
|
+ public int getNodeToLabelsFailedRetrieved() {
|
|
|
|
+ return numGetNodeToLabelsFailedRetrieved.value();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @VisibleForTesting
|
|
|
|
+ public int getLabelsToNodesFailedRetrieved() {
|
|
|
|
+ return numGetLabelsToNodesFailedRetrieved.value();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @VisibleForTesting
|
|
|
|
+ public int getGetClusterNodeLabelsFailedRetrieved() {
|
|
|
|
+ return numGetClusterNodeLabelsFailedRetrieved.value();
|
|
|
|
+ }
|
|
|
|
+
|
|
public void succeededAppsCreated(long duration) {
|
|
public void succeededAppsCreated(long duration) {
|
|
totalSucceededAppsCreated.add(duration);
|
|
totalSucceededAppsCreated.add(duration);
|
|
getNewApplicationLatency.add(duration);
|
|
getNewApplicationLatency.add(duration);
|
|
@@ -301,6 +373,21 @@ public final class RouterMetrics {
|
|
getClusterNodesLatency.add(duration);
|
|
getClusterNodesLatency.add(duration);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public void succeededGetNodeToLabelsRetrieved(long duration) {
|
|
|
|
+ totalSucceededGetNodeToLabelsRetrieved.add(duration);
|
|
|
|
+ getNodeToLabelsLatency.add(duration);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void succeededGetLabelsToNodesRetrieved(long duration) {
|
|
|
|
+ totalSucceededGetLabelsToNodesRetrieved.add(duration);
|
|
|
|
+ getLabelToNodesLatency.add(duration);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void succeededGetClusterNodeLabelsRetrieved(long duration) {
|
|
|
|
+ totalSucceededGetClusterNodeLabelsRetrieved.add(duration);
|
|
|
|
+ getClusterNodeLabelsLatency.add(duration);
|
|
|
|
+ }
|
|
|
|
+
|
|
public void incrAppsFailedCreated() {
|
|
public void incrAppsFailedCreated() {
|
|
numAppsFailedCreated.incr();
|
|
numAppsFailedCreated.incr();
|
|
}
|
|
}
|
|
@@ -332,4 +419,16 @@ public final class RouterMetrics {
|
|
public void incrClusterNodesFailedRetrieved() {
|
|
public void incrClusterNodesFailedRetrieved() {
|
|
numGetClusterNodesFailedRetrieved.incr();
|
|
numGetClusterNodesFailedRetrieved.incr();
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ public void incrNodeToLabelsFailedRetrieved() {
|
|
|
|
+ numGetNodeToLabelsFailedRetrieved.incr();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void incrLabelsToNodesFailedRetrieved() {
|
|
|
|
+ numGetLabelsToNodesFailedRetrieved.incr();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void incrClusterNodeLabelsFailedRetrieved() {
|
|
|
|
+ numGetClusterNodeLabelsFailedRetrieved.incr();
|
|
|
|
+ }
|
|
}
|
|
}
|