From 740921c06a5d767cd4b2813e4bf1e2557c8f14f9 Mon Sep 17 00:00:00 2001 From: gjoranv Date: Thu, 17 Aug 2017 14:53:59 +0200 Subject: Add a new metric set for network metrics. --- .../admin/monitoring/DefaultMetricsConsumer.java | 5 +++- .../model/admin/monitoring/NetworkMetrics.java | 31 ++++++++++++++++++++++ .../monitoring/builder/PredefinedMetricSets.java | 4 ++- 3 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/NetworkMetrics.java diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultMetricsConsumer.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultMetricsConsumer.java index 82dbc590f65..190d293f1b9 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultMetricsConsumer.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/DefaultMetricsConsumer.java @@ -3,6 +3,7 @@ package com.yahoo.vespa.model.admin.monitoring; 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; @@ -19,7 +20,9 @@ public class DefaultMetricsConsumer { private static final MetricSet defaultConsumerMetrics = new MetricSet("default-consumer", emptyList(), - ImmutableList.of(vespaMetricSet, systemMetricSet)); + ImmutableList.of(vespaMetricSet, + systemMetricSet, + networkMetricSet)); @SuppressWarnings("UnusedDeclaration") public static MetricsConsumer getDefaultMetricsConsumer() { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/NetworkMetrics.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/NetworkMetrics.java new file mode 100644 index 00000000000..215e739e350 --- /dev/null +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/NetworkMetrics.java @@ -0,0 +1,31 @@ +// Copyright 2017 Yahoo 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 com.google.common.collect.ImmutableSet; + +import java.util.Set; + +/** + * @author gjoranv + */ +public class NetworkMetrics { + + public static final MetricSet networkMetricSet = createNetworkMetricSet(); + + private static MetricSet createNetworkMetricSet() { + Set dockerNetworkMetrics = + ImmutableSet.of(new Metric("net.in.bytes"), + new Metric("net.in.errors"), + new Metric("net.in.dropped"), + new Metric("net.out.bytes"), + new Metric("net.out.errors"), + new Metric("net.out.dropped") + ); + + Set networkMetrics = ImmutableSet.builder() + .addAll(dockerNetworkMetrics) + .build(); + + return new MetricSet("network", networkMetrics); + } +} 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 5dfb28ffca6..4638353f39f 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,6 +7,7 @@ import java.util.Collections; import java.util.LinkedHashMap; import java.util.Map; +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; import static com.yahoo.vespa.model.admin.monitoring.VespaMetricSet.vespaMetricSet; @@ -21,7 +22,8 @@ public class PredefinedMetricSets { public static final Map predefinedMetricSets = toMapById( defaultVespaMetricSet, vespaMetricSet, - systemMetricSet + systemMetricSet, + networkMetricSet ); private static Map toMapById(MetricSet... metricSets) { -- cgit v1.2.3