diff options
author | Jon Bratseth <bratseth@gmail.com> | 2020-09-30 11:05:23 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2020-09-30 11:05:23 +0200 |
commit | dcba69ba5479e8ffba6cd502c8831d9a8f7f64b5 (patch) | |
tree | c7c6ec8612fd4e6a2387fa8ccaf59d92ab752c56 /config-model | |
parent | 628a9a9dd57d9eadd3ad786c5cde40ccfec1ba63 (diff) |
Add the austoscaling consumer by default
Diffstat (limited to 'config-model')
4 files changed, 13 insertions, 8 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/ConsumersConfigGenerator.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/ConsumersConfigGenerator.java index 2c039118cb9..b0ed04f3013 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/ConsumersConfigGenerator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/ConsumersConfigGenerator.java @@ -30,6 +30,7 @@ class ConsumersConfigGenerator { var allConsumers = new LinkedHashMap<>(userConsumers); allConsumers.put(MetricsConsumer.vespa.id(), combineConsumers(defaultConsumer, allConsumers.get(MetricsConsumer.vespa.id()))); + allConsumers.put(MetricsConsumer.autoscaling.id(), MetricsConsumer.autoscaling); return allConsumers.values().stream() .map(ConsumersConfigGenerator::toConsumerBuilder) diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/MetricsConsumer.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/MetricsConsumer.java index 698b01c306a..6344e462e0f 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/MetricsConsumer.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/MetricsConsumer.java @@ -27,6 +27,7 @@ import static java.util.Collections.unmodifiableList; public class MetricsConsumer { // Pre-defined consumers + // See also ConsumersConfigGenerator and MetricsBuilder where these must be enumerated public static final MetricsConsumer vespa = consumer(VespaMetrics.vespaMetricsConsumerId.id, vespaMetricSet, systemMetricSet, networkMetricSet); public static final MetricsConsumer defaultConsumer = diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/xml/MetricsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/xml/MetricsBuilder.java index 919830d912f..3efc50a7445 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/xml/MetricsBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/xml/MetricsBuilder.java @@ -89,6 +89,9 @@ public class MetricsBuilder { if (consumerId.equalsIgnoreCase(MetricsConsumer.defaultConsumer.id())) throw new IllegalArgumentException("'" + MetricsConsumer.defaultConsumer.id() + "' is not allowed as metrics consumer id (case is ignored.)"); + if (consumerId.equalsIgnoreCase(MetricsConsumer.autoscaling.id())) + throw new IllegalArgumentException("'" + MetricsConsumer.autoscaling.id() + " is not allowed as metrics consumer id (case is ignored.)"); + if (metrics.hasConsumerIgnoreCase(consumerId)) throw new IllegalArgumentException("'" + consumerId + "' is used as id for two metrics consumers (case is ignored.)"); } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsConsumersTest.java b/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsConsumersTest.java index 36eb30073b3..d185362d362 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsConsumersTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsConsumersTest.java @@ -46,19 +46,19 @@ public class MetricsConsumersTest { @Test public void default_public_consumer_is_set_up_for_self_hosted() { ConsumersConfig config = consumersConfigFromXml(servicesWithAdminOnly(), self_hosted); - assertEquals(2, config.consumer().size()); - assertEquals(MetricsConsumer.defaultConsumer.id(), config.consumer(1).name()); - + assertEquals(3, config.consumer().size()); + assertEquals(MetricsConsumer.defaultConsumer.id(), config.consumer(2).name()); int numMetricsForPublicDefaultConsumer = defaultMetricSet.getMetrics().size() + numSystemMetrics; - assertEquals(numMetricsForPublicDefaultConsumer, config.consumer(1).metric().size()); + assertEquals(numMetricsForPublicDefaultConsumer, config.consumer(2).metric().size()); } @Test - public void vespa_consumer_and_default_public_consumer_is_set_up_for_hosted() { + public void consumers_are_set_up_for_hosted() { ConsumersConfig config = consumersConfigFromXml(servicesWithAdminOnly(), hosted); - assertEquals(2, config.consumer().size()); + assertEquals(3, config.consumer().size()); assertEquals(MetricsConsumer.vespa.id(), config.consumer(0).name()); - assertEquals(MetricsConsumer.defaultConsumer.id(), config.consumer(1).name()); + assertEquals(MetricsConsumer.autoscaling.id(), config.consumer(1).name()); + assertEquals(MetricsConsumer.defaultConsumer.id(), config.consumer(2).name()); } @Test @@ -123,7 +123,7 @@ public class MetricsConsumersTest { ); VespaModel hostedModel = getModel(services, hosted); ConsumersConfig config = consumersConfigFromModel(hostedModel); - assertEquals(2, config.consumer().size()); + assertEquals(3, config.consumer().size()); // All default metrics are retained ConsumersConfig.Consumer vespaConsumer = config.consumer(0); |