diff options
author | Harald Musum <musum@verizonmedia.com> | 2021-06-14 12:07:26 +0200 |
---|---|---|
committer | Harald Musum <musum@verizonmedia.com> | 2021-06-14 12:07:26 +0200 |
commit | b17d8cbd35fa2d1a9830edbe446881b750ee91fb (patch) | |
tree | c80c31ee2cae201d523eef1307e8717cdc4f69b0 /node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java | |
parent | 6f95464a48c5b787c9b7cc0711071da4bc7b77f8 (diff) |
Sort nodes by hostname to get deterministic metric reporting order
(and hopefully avoid changes to metric reporting time so we get double
reporting or no reporting within a minute)
Diffstat (limited to 'node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java')
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java | 5 |
1 files changed, 4 insertions, 1 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 9f84322fe0f..d8bbf305b57 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 @@ -27,6 +27,7 @@ import com.yahoo.vespa.service.monitor.ServiceModel; import com.yahoo.vespa.service.monitor.ServiceMonitor; import java.time.Duration; +import java.util.Comparator; import java.util.HashMap; import java.util.HashSet; import java.util.List; @@ -66,7 +67,9 @@ public class MetricsReporter extends NodeRepositoryMaintainer { @Override public double maintain() { - NodeList nodes = nodeRepository().nodes().list(); + // Sort by hostname to get deterministic metric reporting order (and hopefully avoid changes + // to metric reporting time so we get double reporting or no reporting within a minute) + NodeList nodes = nodeRepository().nodes().list().sortedBy(Comparator.comparing(Node::hostname)); ServiceModel serviceModel = serviceMonitor.getServiceModelSnapshot(); updateZoneMetrics(); |