summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorgjoranv <gv@yahoo-inc.com>2017-06-01 21:47:41 +0200
committergjoranv <gv@yahoo-inc.com>2017-06-01 21:47:41 +0200
commit907b23240990926affae248a82b3f6172ae923c6 (patch)
treecf3ef608355475c14ed0c80ca32c768e109776a1 /config-model
parent5f953efac4d4a6973384ae018baa964a25c4c00f (diff)
Add the 'system' metric set to all custom consumers.
+ add another unit test.
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/builder/xml/MetricsBuilder.java3
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/admin/monitoring/MetricSetTest.java16
2 files changed, 15 insertions, 4 deletions
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 130e4555e19..35b297d2ed3 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
@@ -15,6 +15,7 @@ import java.util.Map;
import java.util.stream.Collectors;
import static com.yahoo.vespa.model.admin.monitoring.DefaultMetricsConsumer.VESPA_CONSUMER_ID;
+import static com.yahoo.vespa.model.admin.monitoring.SystemMetrics.systemMetricSet;
/**
* @author gjoranv
@@ -52,6 +53,8 @@ public class MetricsBuilder {
.map(metricSetElement -> availableMetricSets.get(metricSetElement.getAttribute(ID_ATTRIBUTE)))
.collect(Collectors.toCollection(LinkedList::new));
+ metricSets.add(systemMetricSet);
+
return new MetricSet(metricSetId(consumerId), metrics, metricSets);
}
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/admin/monitoring/MetricSetTest.java b/config-model/src/test/java/com/yahoo/vespa/model/admin/monitoring/MetricSetTest.java
index 028be9cede3..cb4728a5c68 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/admin/monitoring/MetricSetTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/admin/monitoring/MetricSetTest.java
@@ -19,10 +19,8 @@ public class MetricSetTest {
@Test
public void metrics_from_children_are_added() {
- MetricSet child1 = new MetricSet("child1",
- ImmutableList.of(new Metric("child1_metric")));
- MetricSet child2 = new MetricSet("child2",
- ImmutableList.of(new Metric("child2_metric")));
+ MetricSet child1 = new MetricSet("child1", ImmutableList.of(new Metric("child1_metric")));
+ MetricSet child2 = new MetricSet("child2", ImmutableList.of(new Metric("child2_metric")));
MetricSet parent = new MetricSet("parent", emptyList(), ImmutableList.of(child1, child2));
Map<String, Metric> parentMetrics = parent.getMetrics();
@@ -32,6 +30,16 @@ public class MetricSetTest {
}
@Test
+ public void adding_the_same_child_set_twice_has_no_effect() {
+ MetricSet child = new MetricSet("child", ImmutableList.of(new Metric("child_metric")));
+ MetricSet parent = new MetricSet("parent", emptyList(), ImmutableList.of(child, child));
+
+ Map<String, Metric> parentMetrics = parent.getMetrics();
+ assertEquals(1, parentMetrics.size());
+ assertNotNull(parentMetrics.get("child_metric"));
+ }
+
+ @Test
public void internal_metrics_take_precedence_over_metrics_from_children() {
String METRIC_NAME = "metric1";
String COMMON_DIMENSION_KEY = "commonKey";