diff options
author | gjoranv <gv@verizonmedia.com> | 2019-08-27 16:43:51 +0200 |
---|---|---|
committer | gjoranv <gv@verizonmedia.com> | 2019-08-27 16:43:51 +0200 |
commit | 819d1c497ef38d2d034173db4c71d3498d989a06 (patch) | |
tree | d6a4e88b11dedea22128a7ec4b8227b8d4793a7f /metrics-proxy | |
parent | 3007317e7fcfc0bc11e41f878bb7e2a98bd9fbfc (diff) |
Add vespa service as dimension instead of prefix to metric names.
Diffstat (limited to 'metrics-proxy')
2 files changed, 14 insertions, 1 deletions
diff --git a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/prometheus/PrometheusUtil.java b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/prometheus/PrometheusUtil.java index cbd4ad2ef8d..d43baa9c9c9 100644 --- a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/prometheus/PrometheusUtil.java +++ b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/prometheus/PrometheusUtil.java @@ -46,9 +46,11 @@ public class PrometheusUtil { labels.add(labelName); labelValues.add(entry.getValue()); } + labels.add("vespa_service"); + labelValues.add(serviceName); for (var metric : packet.metrics().entrySet()) { - var metricName = serviceName + "_" + Collector.sanitizeMetricName(metric.getKey().id); + var metricName = Collector.sanitizeMetricName(metric.getKey().id); List<Sample> sampleList; if (samples.containsKey(metricName)) { sampleList = samples.get(metricName); diff --git a/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/prometheus/PrometheusHandlerTest.java b/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/prometheus/PrometheusHandlerTest.java index d0ce2837568..69cdd9954e4 100644 --- a/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/prometheus/PrometheusHandlerTest.java +++ b/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/prometheus/PrometheusHandlerTest.java @@ -81,9 +81,20 @@ public class PrometheusHandlerTest extends HttpHandlerTestBase { String dummy0 = getLine(valuesResponse, DummyService.NAME + "0"); assertTrue(dummy0.contains("c_test")); // metric name assertTrue(dummy0.contains("} 1.0")); // metric value + } + + @Test + public void service_metrics_have_configured_dimensions() { + String dummy0 = getLine(valuesResponse, DummyService.NAME + "0"); assertTrue(dummy0.contains("consumer_dim=\"default-val\"")); } + @Test + public void service_metrics_have_vespa_service_dimension() { + String dummy0 = getLine(valuesResponse, DummyService.NAME + "0"); + assertTrue(dummy0.contains("vespa_service=\"vespa_dummy\"")); + } + // Find the first line that contains the given string private String getLine(String raw, String searchString) { for (var s : raw.split("\\n")) { |