aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHÃ¥kon Hallingstad <hakon@verizonmedia.com>2020-12-01 16:06:38 +0100
committerGitHub <noreply@github.com>2020-12-01 16:06:38 +0100
commitab8072ce5f98b3f95914c58c815f21b41192e531 (patch)
tree5c58b7f0e16a1963f10035e3262cc07ae4509e5f
parent39024d12a8f0c522c4cc5210e4f3f917ef620294 (diff)
parentfa9b01704b3cec57ce9b7048275357db4bd15c74 (diff)
Merge pull request #15569 from vespa-engine/hakonhall/only-report-non-zero-lock-metrics
Only report non-zero lock metrics
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java22
1 files changed, 14 insertions, 8 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java
index 685fa3727a1..bcdcd9054a7 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java
@@ -262,19 +262,19 @@ public class MetricsReporter extends NodeRepositoryMaintainer {
Metric.Context context = getContext(Map.of("lockPath", lockPath));
LatencyMetrics acquireLatencyMetrics = lockMetrics.getAndResetAcquireLatencyMetrics();
- metric.set("lockAttempt.acquireMaxActiveLatency", acquireLatencyMetrics.maxActiveLatencySeconds(), context);
- metric.set("lockAttempt.acquireHz", acquireLatencyMetrics.startHz(), context);
- metric.set("lockAttempt.acquireLoad", acquireLatencyMetrics.load(), context);
+ setNonZero("lockAttempt.acquireMaxActiveLatency", acquireLatencyMetrics.maxActiveLatencySeconds(), context);
+ setNonZero("lockAttempt.acquireHz", acquireLatencyMetrics.startHz(), context);
+ setNonZero("lockAttempt.acquireLoad", acquireLatencyMetrics.load(), context);
LatencyMetrics lockedLatencyMetrics = lockMetrics.getAndResetLockedLatencyMetrics();
- metric.set("lockAttempt.lockedLatency", lockedLatencyMetrics.maxLatencySeconds(), context);
- metric.set("lockAttempt.lockedLoad", lockedLatencyMetrics.load(), context);
+ setNonZero("lockAttempt.lockedLatency", lockedLatencyMetrics.maxLatencySeconds(), context);
+ setNonZero("lockAttempt.lockedLoad", lockedLatencyMetrics.load(), context);
- metric.set("lockAttempt.acquireTimedOut", lockMetrics.getAndResetAcquireTimedOutCount(), context);
- metric.set("lockAttempt.deadlock", lockMetrics.getAndResetDeadlockCount(), context);
+ setNonZero("lockAttempt.acquireTimedOut", lockMetrics.getAndResetAcquireTimedOutCount(), context);
+ setNonZero("lockAttempt.deadlock", lockMetrics.getAndResetDeadlockCount(), context);
// bucket for various rare errors - to reduce #metrics
- metric.set("lockAttempt.errors",
+ setNonZero("lockAttempt.errors",
lockMetrics.getAndResetAcquireFailedCount() +
lockMetrics.getAndResetReleaseFailedCount() +
lockMetrics.getAndResetNakedReleaseCount() +
@@ -284,6 +284,12 @@ public class MetricsReporter extends NodeRepositoryMaintainer {
});
}
+ private void setNonZero(String key, Number value, Metric.Context context) {
+ if (Double.compare(value.doubleValue(), 0.0) != 0) {
+ metric.set(key, value, context);
+ }
+ }
+
private void updateDockerMetrics(NodeList nodes) {
NodeResources totalCapacity = getCapacityTotal(nodes);
metric.set("hostedVespa.docker.totalCapacityCpu", totalCapacity.vcpu(), null);