diff options
author | Jon Bratseth <bratseth@gmail.com> | 2020-11-30 14:31:26 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2020-11-30 14:31:26 +0100 |
commit | 4765de9be3717b0dcdc08deac520b7fd7f4f9dca (patch) | |
tree | 18955ff7a4a3167b91107417ec4f5672c9849a38 /node-repository | |
parent | 7ad2fca1417f807ebd81a716a2fbfdc458397927 (diff) |
Add temporary additional information
Diffstat (limited to 'node-repository')
2 files changed, 19 insertions, 1 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/Autoscaler.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/Autoscaler.java index 7e73b561cd0..023eb5860ee 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/Autoscaler.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/Autoscaler.java @@ -71,7 +71,11 @@ public class Autoscaler { int measurementsPerNode = clusterTimeseries.measurementsPerNode(); if (measurementsPerNode < minimumMeasurementsPerNode(clusterType)) return Advice.none("Collecting more data before making new scaling decisions" + - ": Has " + measurementsPerNode + " data points per node"); + ": Has " + measurementsPerNode + " data points per node" + + "(all: " + clusterTimeseries.measurementCount + + ", without stale: " + clusterTimeseries.measurementCountWithoutStale + + ", without out of service: " + clusterTimeseries.measurementCountWithoutStaleOutOfService + + ", without unstable: " + clusterTimeseries.measurementCountWithoutStaleOutOfServiceUnstable); int nodesMeasured = clusterTimeseries.nodesMeasured(); if (nodesMeasured != clusterNodes.size()) diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/ClusterTimeseries.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/ClusterTimeseries.java index db45a364d18..1983162f121 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/ClusterTimeseries.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/ClusterTimeseries.java @@ -23,6 +23,11 @@ public class ClusterTimeseries { private final List<Node> clusterNodes; + final int measurementCount; + final int measurementCountWithoutStale; + final int measurementCountWithoutStaleOutOfService; + final int measurementCountWithoutStaleOutOfServiceUnstable; + /** The measurements for all hosts in this snapshot */ private final List<NodeTimeseries> nodeTimeseries; @@ -32,9 +37,18 @@ public class ClusterTimeseries { var timeseries = db.getNodeTimeseries(nodeRepository.clock().instant().minus(Autoscaler.scalingWindow(clusterType)), clusterNodes.stream().map(Node::hostname).collect(Collectors.toSet())); Map<String, Instant> startTimePerNode = metricStartTimes(cluster, clusterNodes, timeseries, nodeRepository); + + measurementCount = timeseries.stream().mapToInt(m -> m.size()).sum(); + timeseries = filterStale(timeseries, startTimePerNode); + measurementCountWithoutStale = timeseries.stream().mapToInt(m -> m.size()).sum(); + timeseries = filter(timeseries, snapshot -> snapshot.inService()); + measurementCountWithoutStaleOutOfService = timeseries.stream().mapToInt(m -> m.size()).sum(); + timeseries = filter(timeseries, snapshot -> snapshot.stable()); + measurementCountWithoutStaleOutOfServiceUnstable = timeseries.stream().mapToInt(m -> m.size()).sum(); + this.nodeTimeseries = timeseries; } |