diff options
Diffstat (limited to 'config-model/src/main')
15 files changed, 104 insertions, 120 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java index 1b5be1c2f97..3f432620b90 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java @@ -31,7 +31,7 @@ import java.util.Collections; import java.util.List; import java.util.Optional; -import static com.yahoo.vespa.model.admin.monitoring.MetricSet.emptyMetricSet; +import static com.yahoo.vespa.model.admin.monitoring.MetricSet.empty; /** * This is the admin pseudo-plugin of the Vespa model, responsible for @@ -49,7 +49,7 @@ public class Admin extends AbstractConfigProducer implements Serializable { private final Metrics metrics; private MetricsProxyContainerCluster metricsProxyCluster; - private MetricSet additionalDefaultMetrics = emptyMetricSet(); + private MetricSet additionalDefaultMetrics = empty(); private final List<Slobrok> slobroks = new ArrayList<>(); private Configserver defaultConfigserver; 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 3f9edae10c0..2c039118cb9 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 @@ -12,8 +12,6 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; -import static com.yahoo.vespa.model.admin.monitoring.VespaMetricsConsumer.VESPA_CONSUMER_ID; - /** * Helper class to generate config for metrics consumers. * @@ -22,14 +20,16 @@ import static com.yahoo.vespa.model.admin.monitoring.VespaMetricsConsumer.VESPA_ class ConsumersConfigGenerator { /** - * @param userConsumers The consumers set up by the user in services.xml - * @return A list of consumer builders (a mapping from consumer to its metrics) + * @param userConsumers the consumers set up by the user in services.xml + * @return a list of consumer builders (a mapping from consumer to its metrics) */ static List<Consumer.Builder> generateConsumers(MetricsConsumer defaultConsumer, Map<String, MetricsConsumer> userConsumers) { - // Normally, the user given consumers should not contain VESPA_CONSUMER_ID, but it's allowed for some internally used applications. + // Normally, the user given consumers should not contain VESPA_CONSUMER_ID, + // but it's allowed for some internally used applications. var allConsumers = new LinkedHashMap<>(userConsumers); - allConsumers.put(VESPA_CONSUMER_ID, combineConsumers(defaultConsumer, allConsumers.get(VESPA_CONSUMER_ID))); + allConsumers.put(MetricsConsumer.vespa.id(), + combineConsumers(defaultConsumer, allConsumers.get(MetricsConsumer.vespa.id()))); return allConsumers.values().stream() .map(ConsumersConfigGenerator::toConsumerBuilder) @@ -45,18 +45,18 @@ class ConsumersConfigGenerator { */ private static MetricsConsumer combineConsumers(MetricsConsumer original, MetricsConsumer overriding) { if (overriding == null) return original; - return addMetrics(original, overriding.getMetrics()); + return addMetrics(original, overriding.metrics()); } static MetricsConsumer addMetrics(MetricsConsumer original, Map<String, Metric> metrics) { if (metrics == null) return original; - Map<String, Metric> combinedMetrics = new LinkedHashMap<>(original.getMetrics()); + Map<String, Metric> combinedMetrics = new LinkedHashMap<>(original.metrics()); metrics.forEach((name, newMetric) -> - combinedMetrics.put(name, combineMetrics(original.getMetrics().get(name), newMetric))); + combinedMetrics.put(name, combineMetrics(original.metrics().get(name), newMetric))); - return new MetricsConsumer(original.getId(), - new MetricSet(original.getMetricSet().getId(), combinedMetrics.values())); + return new MetricsConsumer(original.id(), + new MetricSet(original.metricSet().getId(), combinedMetrics.values())); } private static Metric combineMetrics(Metric original, Metric newMetric) { @@ -64,8 +64,8 @@ class ConsumersConfigGenerator { } static Consumer.Builder toConsumerBuilder(MetricsConsumer consumer) { - Consumer.Builder builder = new Consumer.Builder().name(consumer.getId()); - consumer.getMetrics().values().forEach(metric -> builder.metric(toConsumerMetricBuilder(metric))); + Consumer.Builder builder = new Consumer.Builder().name(consumer.id()); + consumer.metrics().values().forEach(metric -> builder.metric(toConsumerMetricBuilder(metric))); return builder; } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerCluster.java index b5936887b50..fbf6dcfd5eb 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerCluster.java @@ -56,9 +56,7 @@ import static com.yahoo.vespa.model.admin.metricsproxy.MetricsProxyContainerClus import static com.yahoo.vespa.model.admin.metricsproxy.MetricsProxyContainerCluster.AppDimensionNames.LEGACY_APPLICATION; import static com.yahoo.vespa.model.admin.metricsproxy.MetricsProxyContainerCluster.AppDimensionNames.SYSTEM; import static com.yahoo.vespa.model.admin.metricsproxy.MetricsProxyContainerCluster.AppDimensionNames.TENANT; -import static com.yahoo.vespa.model.admin.monitoring.DefaultPublicConsumer.getDefaultPublicConsumer; -import static com.yahoo.vespa.model.admin.monitoring.MetricSet.emptyMetricSet; -import static com.yahoo.vespa.model.admin.monitoring.VespaMetricsConsumer.getVespaMetricsConsumer; +import static com.yahoo.vespa.model.admin.monitoring.MetricSet.empty; /** * Container cluster for metrics proxy containers. @@ -161,10 +159,10 @@ public class MetricsProxyContainerCluster extends ContainerCluster<MetricsProxyC @Override public void getConfig(ConsumersConfig.Builder builder) { - var amendedVespaConsumer = addMetrics(getVespaMetricsConsumer(), getAdditionalDefaultMetrics().getMetrics()); + var amendedVespaConsumer = addMetrics(MetricsConsumer.vespa, getAdditionalDefaultMetrics().getMetrics()); builder.consumer.addAll(generateConsumers(amendedVespaConsumer, getUserMetricsConsumers())); - builder.consumer.add(toConsumerBuilder(getDefaultPublicConsumer())); + builder.consumer.add(toConsumerBuilder(MetricsConsumer.defaultConsumer)); } @Override @@ -210,7 +208,7 @@ public class MetricsProxyContainerCluster extends ContainerCluster<MetricsProxyC private MetricSet getAdditionalDefaultMetrics() { return getAdmin() .map(Admin::getAdditionalDefaultMetrics) - .orElse(emptyMetricSet()); + .orElse(empty()); } // Returns the metrics consumers from services.xml diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/AutoscalingMetrics.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/AutoscalingMetrics.java new file mode 100644 index 00000000000..f6f51ed91fb --- /dev/null +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/AutoscalingMetrics.java @@ -0,0 +1,26 @@ +// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.vespa.model.admin.monitoring; + +import java.util.Arrays; +import java.util.Set; +import java.util.stream.Collectors; + +/** + * Metrics used for autoscaling + * + * @author bratseth + */ +public class AutoscalingMetrics { + + public static final MetricSet autoscalingMetricSet = create(); + + private static MetricSet create() { + return new MetricSet("autoscaling", + metrics("cpu.util", "mem_total.util", "disk.util")); + } + + private static Set<Metric> metrics(String ... names) { + return Arrays.stream(names).map(Metric::new).collect(Collectors.toSet()); + } + +} diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/CloudWatch.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/CloudWatch.java index 5351c3fb3a7..66a278b3fb6 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/CloudWatch.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/CloudWatch.java @@ -8,6 +8,7 @@ import java.util.Optional; * @author gjoranv */ public class CloudWatch { + private final String region; private final String namespace; private final MetricsConsumer consumer; @@ -23,7 +24,7 @@ public class CloudWatch { public String region() { return region; } public String namespace() { return namespace; } - public String consumer() { return consumer.getId(); } + public String consumer() { return consumer.id(); } public Optional<HostedAuth> hostedAuth() {return Optional.ofNullable(hostedAuth); } public Optional<SharedCredentials> sharedCredentials() {return Optional.ofNullable(sharedCredentials); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultPublicMetrics.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultMetrics.java index c80cebe3d5b..adc0d0b1db8 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultPublicMetrics.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultMetrics.java @@ -9,7 +9,6 @@ import java.util.LinkedHashSet; import java.util.Set; import static com.yahoo.vespa.model.admin.monitoring.DefaultVespaMetrics.defaultVespaMetricSet; -import static java.util.Collections.emptyList; import static java.util.Collections.singleton; /** @@ -18,14 +17,14 @@ import static java.util.Collections.singleton; * * @author gjoranv */ -public class DefaultPublicMetrics { +public class DefaultMetrics { - public static final String DEFAULT_METRIC_SET_ID = "default"; + public static final String defaultMetricSetId = "default"; - public static MetricSet defaultPublicMetricSet = createMetricSet(); + public static MetricSet defaultMetricSet = createMetricSet(); private static MetricSet createMetricSet() { - return new MetricSet(DEFAULT_METRIC_SET_ID, + return new MetricSet(defaultMetricSetId, getAllMetrics(), singleton(defaultVespaMetricSet)); } @@ -95,6 +94,6 @@ public class DefaultPublicMetrics { return metrics; } - private DefaultPublicMetrics() { } + private DefaultMetrics() { } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultPublicConsumer.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultPublicConsumer.java deleted file mode 100644 index 68b1fc3c983..00000000000 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultPublicConsumer.java +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2020 Oath Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. - -package com.yahoo.vespa.model.admin.monitoring; - -import ai.vespa.metricsproxy.http.ValuesFetcher; -import com.google.common.collect.ImmutableList; - -import static com.yahoo.vespa.model.admin.monitoring.DefaultPublicMetrics.defaultPublicMetricSet; -import static com.yahoo.vespa.model.admin.monitoring.DefaultVespaMetrics.defaultVespaMetricSet; -import static com.yahoo.vespa.model.admin.monitoring.SystemMetrics.systemMetricSet; -import static java.util.Collections.emptyList; - -/** - * @author gjoranv - */ -public class DefaultPublicConsumer { - - public static final String DEFAULT_PUBLIC_CONSUMER_ID = ValuesFetcher.DEFAULT_PUBLIC_CONSUMER_ID.id; - - private static final MetricSet publicConsumerMetrics = new MetricSet("public-consumer-metrics", - emptyList(), - ImmutableList.of(defaultPublicMetricSet, - systemMetricSet)); - - public static MetricsConsumer getDefaultPublicConsumer() { - return new MetricsConsumer(DEFAULT_PUBLIC_CONSUMER_ID, publicConsumerMetrics); - } - -} diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/MetricSet.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/MetricSet.java index d879a6f445d..30797f27789 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/MetricSet.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/MetricSet.java @@ -24,21 +24,19 @@ public class MetricSet { private final Map<String, Metric> metrics; private final Set<MetricSet> children; + public MetricSet(String id, Collection<Metric> metrics) { + this(id, metrics, Collections.emptySet()); + } public MetricSet(String id, Collection<Metric> metrics, Collection<MetricSet> children) { - Objects.requireNonNull(id, "Id cannot be null or empty."); + this.id = Objects.requireNonNull(id, "Id cannot be null or empty."); - this.id = id; this.metrics = toMapByName(metrics); this.children = new LinkedHashSet<>(children); } - public MetricSet(String id, Collection<Metric> metrics) { - this(id, metrics, Collections.emptySet()); - } - - public static MetricSet emptyMetricSet() { - return new MetricSet("empty", Collections.emptySet()); + public static MetricSet empty() { + return new MetricSet("empty", Set.of()); } public final String getId() { return id; } 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 a8fbcf50b02..698b01c306a 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 @@ -1,26 +1,44 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model.admin.monitoring; -import javax.annotation.concurrent.Immutable; +import ai.vespa.metricsproxy.core.VespaMetrics; +import ai.vespa.metricsproxy.http.ValuesFetcher; + import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.Objects; +import static com.yahoo.vespa.model.admin.monitoring.AutoscalingMetrics.autoscalingMetricSet; +import static com.yahoo.vespa.model.admin.monitoring.DefaultMetrics.defaultMetricSet; +import static com.yahoo.vespa.model.admin.monitoring.NetworkMetrics.networkMetricSet; +import static com.yahoo.vespa.model.admin.monitoring.SystemMetrics.systemMetricSet; +import static com.yahoo.vespa.model.admin.monitoring.VespaMetricSet.vespaMetricSet; import static java.util.Collections.unmodifiableList; /** - * Represents an arbitrary metric consumer + * A metric consumer is a set of metrics given an id that can be requested at runtime. * - * @author trygve + * @author Trygve Berdal * @author gjoranv */ -@Immutable +// TODO: This construct seems redundant when we have metrics sets public class MetricsConsumer { + // Pre-defined consumers + public static final MetricsConsumer vespa = + consumer(VespaMetrics.vespaMetricsConsumerId.id, vespaMetricSet, systemMetricSet, networkMetricSet); + public static final MetricsConsumer defaultConsumer = + consumer(ValuesFetcher.defaultMetricsConsumerId.id, defaultMetricSet, systemMetricSet); + // Referenced from com.yahoo.vespa.hosted.provision.autoscale.NodeMetricsFetcher + public static final MetricsConsumer autoscaling = + consumer("autoscaling", autoscalingMetricSet); + private final String id; private final MetricSet metricSet; + // TODO: This shouldn't be here private final List<CloudWatch> cloudWatches = new ArrayList<>(); /** @@ -32,16 +50,16 @@ public class MetricsConsumer { this.metricSet = Objects.requireNonNull(metricSet, "A consumer must have a non-null metric set."); } - public String getId() { + public String id() { return id; } - public MetricSet getMetricSet() { return metricSet; } + public MetricSet metricSet() { return metricSet; } /** - * @return Map of metric with metric name as key + * @return map of metric with metric name as key */ - public Map<String, Metric> getMetrics() { + public Map<String, Metric> metrics() { return metricSet.getMetrics(); } @@ -53,4 +71,8 @@ public class MetricsConsumer { return unmodifiableList(cloudWatches); } + private static MetricsConsumer consumer(String id, MetricSet ... metricSets) { + return new MetricsConsumer(id, new MetricSet(id + "-consumer-metrics", List.of(), Arrays.asList(metricSets))); + } + } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/VespaMetricsConsumer.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/VespaMetricsConsumer.java deleted file mode 100644 index 9f3bfdc8ae8..00000000000 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/VespaMetricsConsumer.java +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.vespa.model.admin.monitoring; - -import ai.vespa.metricsproxy.core.VespaMetrics; -import com.google.common.collect.ImmutableList; - -import static com.yahoo.vespa.model.admin.monitoring.NetworkMetrics.networkMetricSet; -import static com.yahoo.vespa.model.admin.monitoring.SystemMetrics.systemMetricSet; -import static com.yahoo.vespa.model.admin.monitoring.VespaMetricSet.vespaMetricSet; -import static java.util.Collections.emptyList; - -/** - * This class sets up the 'Vespa' metrics consumer, which is mainly used for Yamas in hosted Vespa. - * - * @author trygve - * @author gjoranv - */ -public class VespaMetricsConsumer { - - public static final String VESPA_CONSUMER_ID = VespaMetrics.VESPA_CONSUMER_ID.id; - - private static final MetricSet vespaConsumerMetrics = new MetricSet("vespa-consumer-metrics", - emptyList(), - ImmutableList.of(vespaMetricSet, - systemMetricSet, - networkMetricSet)); - - public static MetricsConsumer getVespaMetricsConsumer() { - return new MetricsConsumer(VESPA_CONSUMER_ID, vespaConsumerMetrics); - } - -} diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/Metrics.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/Metrics.java index 1f81f16a80b..6f9e9a08aa6 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/Metrics.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/Metrics.java @@ -17,7 +17,7 @@ public class Metrics { private final Map<String, MetricsConsumer> consumers = new LinkedHashMap<>(); public void addConsumer(MetricsConsumer consumer) { - consumers.put(consumer.getId(), consumer); + consumers.put(consumer.id(), consumer); } public Map<String, MetricsConsumer> getConsumers() { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/PredefinedMetricSets.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/PredefinedMetricSets.java index 694108d4bb1..dd514f1e245 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/PredefinedMetricSets.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/PredefinedMetricSets.java @@ -7,7 +7,8 @@ import java.util.Collections; import java.util.LinkedHashMap; import java.util.Map; -import static com.yahoo.vespa.model.admin.monitoring.DefaultPublicMetrics.defaultPublicMetricSet; +import static com.yahoo.vespa.model.admin.monitoring.AutoscalingMetrics.autoscalingMetricSet; +import static com.yahoo.vespa.model.admin.monitoring.DefaultMetrics.defaultMetricSet; import static com.yahoo.vespa.model.admin.monitoring.NetworkMetrics.networkMetricSet; import static com.yahoo.vespa.model.admin.monitoring.SystemMetrics.systemMetricSet; import static com.yahoo.vespa.model.admin.monitoring.DefaultVespaMetrics.defaultVespaMetricSet; @@ -20,14 +21,17 @@ import static com.yahoo.vespa.model.admin.monitoring.VespaMetricSet.vespaMetricS */ public class PredefinedMetricSets { - public static final Map<String, MetricSet> predefinedMetricSets = toMapById( - defaultPublicMetricSet, + private static final Map<String, MetricSet> sets = toMapById( + defaultMetricSet, defaultVespaMetricSet, vespaMetricSet, systemMetricSet, - networkMetricSet + networkMetricSet, + autoscalingMetricSet ); + public static Map<String, MetricSet> get() { return sets; } + private static Map<String, MetricSet> toMapById(MetricSet... metricSets) { Map<String, MetricSet> availableMetricSets = new LinkedHashMap<>(); for (MetricSet metricSet : metricSets) { 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 b686288868f..919830d912f 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 @@ -14,8 +14,6 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; -import static com.yahoo.vespa.model.admin.monitoring.DefaultPublicConsumer.DEFAULT_PUBLIC_CONSUMER_ID; -import static com.yahoo.vespa.model.admin.monitoring.VespaMetricsConsumer.VESPA_CONSUMER_ID; import static com.yahoo.vespa.model.admin.monitoring.DefaultVespaMetrics.defaultVespaMetricSet; import static com.yahoo.vespa.model.admin.monitoring.SystemMetrics.systemMetricSet; @@ -85,11 +83,11 @@ public class MetricsBuilder { } private void throwIfIllegalConsumerId(Metrics metrics, String consumerId) { - if (consumerId.equalsIgnoreCase(VESPA_CONSUMER_ID) && applicationType != ApplicationType.HOSTED_INFRASTRUCTURE) + if (consumerId.equalsIgnoreCase(MetricsConsumer.vespa.id()) && applicationType != ApplicationType.HOSTED_INFRASTRUCTURE) throw new IllegalArgumentException("'Vespa' is not allowed as metrics consumer id (case is ignored.)"); - if (consumerId.equalsIgnoreCase(DEFAULT_PUBLIC_CONSUMER_ID)) - throw new IllegalArgumentException("'" + DEFAULT_PUBLIC_CONSUMER_ID + "' is not allowed as metrics consumer id (case is ignored.)"); + if (consumerId.equalsIgnoreCase(MetricsConsumer.defaultConsumer.id())) + throw new IllegalArgumentException("'" + MetricsConsumer.defaultConsumer.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/main/java/com/yahoo/vespa/model/application/validation/CloudWatchValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/CloudWatchValidator.java index 462ac39fa84..025b7875677 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/CloudWatchValidator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/CloudWatchValidator.java @@ -31,7 +31,7 @@ public class CloudWatchValidator extends Validator { } private List<String> consumerIds(List<MetricsConsumer> offendingConsumers) { - return offendingConsumers.stream().map(MetricsConsumer::getId).collect(toList()); + return offendingConsumers.stream().map(MetricsConsumer::id).collect(toList()); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminBuilderBase.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminBuilderBase.java index d2f06da992c..b643f771d73 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminBuilderBase.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminBuilderBase.java @@ -18,6 +18,7 @@ import com.yahoo.vespa.model.admin.ModelConfigProvider; import com.yahoo.vespa.model.admin.monitoring.DefaultMonitoring; import com.yahoo.vespa.model.admin.monitoring.Monitoring; import com.yahoo.vespa.model.admin.monitoring.builder.Metrics; +import com.yahoo.vespa.model.admin.monitoring.builder.PredefinedMetricSets; import com.yahoo.vespa.model.admin.monitoring.builder.xml.MetricsBuilder; import com.yahoo.vespa.model.filedistribution.FileDistributionConfigProducer; import org.w3c.dom.Element; @@ -25,8 +26,6 @@ import org.w3c.dom.Element; import java.util.ArrayList; import java.util.List; -import static com.yahoo.vespa.model.admin.monitoring.builder.PredefinedMetricSets.predefinedMetricSets; - /** * A base class for admin model builders, to support common functionality across versions. * @@ -69,8 +68,8 @@ public abstract class DomAdminBuilderBase extends VespaDomBuilder.DomConfigProdu @Override protected Admin doBuild(DeployState deployState, AbstractConfigProducer parent, Element adminElement) { Monitoring monitoring = getMonitoring(XML.getChild(adminElement,"monitoring"), deployState.isHosted()); - Metrics metrics = new MetricsBuilder(applicationType, predefinedMetricSets) - .buildMetrics(XML.getChild(adminElement, "metrics")); + Metrics metrics = new MetricsBuilder(applicationType, PredefinedMetricSets.get()) + .buildMetrics(XML.getChild(adminElement, "metrics")); FileDistributionConfigProducer fileDistributionConfigProducer = getFileDistributionConfigProducer(parent, deployState.isHosted()); Admin admin = new Admin(parent, monitoring, metrics, multitenant, fileDistributionConfigProducer, deployState.isHosted()); |