diff options
4 files changed, 12 insertions, 2 deletions
diff --git a/metrics/src/main/java/ai/vespa/metrics/ConfigServerMetrics.java b/metrics/src/main/java/ai/vespa/metrics/ConfigServerMetrics.java index 94731945038..c413dc5e7d7 100644 --- a/metrics/src/main/java/ai/vespa/metrics/ConfigServerMetrics.java +++ b/metrics/src/main/java/ai/vespa/metrics/ConfigServerMetrics.java @@ -56,6 +56,11 @@ public enum ConfigServerMetrics implements VespaMetrics { NODES_NON_ACTIVE_FRACTION("nodes.nonActiveFraction", Unit.NODE, "The fraction of non-active nodes vs total nodes in a cluster"), NODES_EXCLUSIVE_SWITCH_FRACTION("nodes.exclusiveSwitchFraction", Unit.FRACTION, "The fraction of nodes in a cluster on exclusive network switches"), NODES_EMPTY_EXCLUSIVE("nodes.emptyExclusive", Unit.NODE, "The number of exclusive hosts that do not have any nodes allocated to them"), + NODES_EXPIRED_DEPROVISIONED("nodes.expired.deprovisioned", Unit.NODE, "The number of deprovisioned nodes that have expired"), + NODES_EXPIRED_DIRTY("nodes.expired.dirty", Unit.NODE, "The number of dirty nodes that have expired"), + NODES_EXPIRED_INACTIVE("nodes.expired.inactive", Unit.NODE, "The number of inactive nodes that have expired"), + NODES_EXPIRED_PROVISIONED("nodes.expired.provisioned", Unit.NODE, "The number of provisioned nodes that have expired"), + NODES_EXPIRED_RESERVED("nodes.expired.reserved", Unit.NODE, "The number of reserved nodes that have expired"), CLUSTER_COST("cluster.cost", Unit.DOLLAR_PER_HOUR, "The cost of the nodes allocated to a certain cluster, in $/hr"), CLUSTER_LOAD_IDEAL_CPU("cluster.load.ideal.cpu", Unit.FRACTION, "The ideal cpu load of a certain cluster"), diff --git a/metrics/src/main/java/ai/vespa/metrics/set/InfrastructureMetricSet.java b/metrics/src/main/java/ai/vespa/metrics/set/InfrastructureMetricSet.java index a9d078e2a44..61ab8cea941 100644 --- a/metrics/src/main/java/ai/vespa/metrics/set/InfrastructureMetricSet.java +++ b/metrics/src/main/java/ai/vespa/metrics/set/InfrastructureMetricSet.java @@ -68,6 +68,11 @@ public class InfrastructureMetricSet { addMetric(metrics, ConfigServerMetrics.CLUSTER_LOAD_IDEAL_MEMORY.max()); addMetric(metrics, ConfigServerMetrics.CLUSTER_LOAD_IDEAL_DISK.max()); addMetric(metrics, ConfigServerMetrics.NODES_EMPTY_EXCLUSIVE.max()); + addMetric(metrics, ConfigServerMetrics.NODES_EXPIRED_DEPROVISIONED.sum()); + addMetric(metrics, ConfigServerMetrics.NODES_EXPIRED_DIRTY.sum()); + addMetric(metrics, ConfigServerMetrics.NODES_EXPIRED_INACTIVE.sum()); + addMetric(metrics, ConfigServerMetrics.NODES_EXPIRED_PROVISIONED.sum()); + addMetric(metrics, ConfigServerMetrics.NODES_EXPIRED_RESERVED.sum()); addMetric(metrics, ConfigServerMetrics.WANT_TO_REBOOT.max()); addMetric(metrics, ConfigServerMetrics.WANT_TO_RESTART.max()); addMetric(metrics, ConfigServerMetrics.WANT_TO_RETIRE.max()); diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Expirer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Expirer.java index a79603dc833..bc9d7b0f190 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Expirer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/Expirer.java @@ -47,7 +47,7 @@ public abstract class Expirer extends NodeRepositoryMaintainer { expire(expired.asList()); } - metric.add("expired." + fromState, expired.size(), null); + metric.add("nodes.expired." + fromState, expired.size(), null); return 1.0; } diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/ReservationExpirerTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/ReservationExpirerTest.java index d640101f5e5..2a19aa74073 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/ReservationExpirerTest.java +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/ReservationExpirerTest.java @@ -53,7 +53,7 @@ public class ReservationExpirerTest { assertEquals(0, nodeRepository.nodes().list(Node.State.reserved).nodeType(NodeType.tenant).size()); NodeList dirty = nodeRepository.nodes().list(Node.State.dirty).nodeType(NodeType.tenant); assertEquals(2, dirty.size()); - assertEquals(2, metric.values.get("expired.reserved")); + assertEquals(2, metric.values.get("nodes.expired.reserved")); } } |