summaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorOla Aunronning <olaa@yahooinc.com>2023-09-29 15:24:19 +0200
committerOla Aunronning <olaa@yahooinc.com>2023-09-29 15:24:19 +0200
commit49f02a3c2deca996ee83ba463d8484d22f70cbe6 (patch)
treea9bd5f7245e7a154f7f2f88048fded401cc2cb1f /node-repository
parent210b35b7094bb09c287d27557bca005ce0926ace (diff)
Remove state tag. Only report metrics for active nodes
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporter.java7
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporterTest.java10
2 files changed, 9 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 a7e82250275..a067fd25753 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
@@ -169,13 +169,13 @@ public class MetricsReporter extends NodeRepositoryMaintainer {
* NB: Keep this metric set in sync with internal configserver metric pre-aggregation
*/
private void updateNodeMetrics(Node node, ServiceModel serviceModel) {
+ if (node.state() != State.active)
+ return;
Metric.Context context;
-
Optional<Allocation> allocation = node.allocation();
if (allocation.isPresent()) {
ApplicationId applicationId = allocation.get().owner();
Map<String, String> dimensions = new HashMap<>(dimensions(applicationId));
- dimensions.put("state", node.state().name());
dimensions.put("host", node.hostname());
dimensions.put("clustertype", allocation.get().membership().cluster().type().name());
dimensions.put("clusterid", allocation.get().membership().cluster().id().value());
@@ -202,8 +202,7 @@ public class MetricsReporter extends NodeRepositoryMaintainer {
metric.set(ConfigServerMetrics.HAS_WIRE_GUARD_KEY.baseName(), node.wireguardPubKey().isPresent() ? 1 : 0, context);
}
} else {
- context = getContext(Map.of("state", node.state().name(),
- "host", node.hostname()));
+ context = getContext(Map.of("host", node.hostname()));
}
Optional<Version> currentVersion = node.status().vespaVersion();
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporterTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporterTest.java
index 1e2a6805ad1..0ca189aeee8 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporterTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/MetricsReporterTest.java
@@ -87,8 +87,10 @@ public class MetricsReporterTest {
HostInfo.createSuspended(HostStatus.ALLOWED_TO_BE_DOWN, Instant.ofEpochSecond(1)));
ProvisioningTester tester = new ProvisioningTester.Builder().flavors(nodeFlavors.getFlavors()).orchestrator(orchestrator).build();
NodeRepository nodeRepository = tester.nodeRepository();
- tester.makeProvisionedNodes(1, "default", NodeType.tenant, 0);
- tester.makeProvisionedNodes(1, "default", NodeType.proxy, 0);
+ tester.makeProvisionedNodes(1, "default", NodeType.tenant, 0)
+ .forEach(node -> tester.move(Node.State.active, node));
+ tester.makeProvisionedNodes(1, "default", NodeType.proxy, 0)
+ .forEach(node -> tester.move(Node.State.active, node));
Map<String, Number> expectedMetrics = new TreeMap<>();
expectedMetrics.put("zone.working", 1);
@@ -102,11 +104,11 @@ public class MetricsReporterTest {
expectedMetrics.put("hostedVespa.failedHosts", 0);
expectedMetrics.put("hostedVespa.deprovisionedHosts", 0);
expectedMetrics.put("hostedVespa.breakfixedHosts", 0);
- expectedMetrics.put("hostedVespa.provisionedNodes", 1);
+ expectedMetrics.put("hostedVespa.provisionedNodes", 0);
expectedMetrics.put("hostedVespa.parkedNodes", 0);
expectedMetrics.put("hostedVespa.readyNodes", 0);
expectedMetrics.put("hostedVespa.reservedNodes", 0);
- expectedMetrics.put("hostedVespa.activeNodes", 0);
+ expectedMetrics.put("hostedVespa.activeNodes", 1);
expectedMetrics.put("hostedVespa.inactiveNodes", 0);
expectedMetrics.put("hostedVespa.dirtyNodes", 0);
expectedMetrics.put("hostedVespa.failedNodes", 0);