From 82b216dc9e1107e8b13b19b1b8856ea4f516c7d7 Mon Sep 17 00:00:00 2001 From: Felix Date: Tue, 24 May 2016 14:26:04 +0200 Subject: [PATCH 1/2] Remove sum from Summary Just summing all snapshot values does not work with dropwizard metrics, because the values array does not hold all values but only a sample of recent values. --- .../io/prometheus/client/dropwizard/DropwizardExports.java | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/simpleclient_dropwizard/src/main/java/io/prometheus/client/dropwizard/DropwizardExports.java b/simpleclient_dropwizard/src/main/java/io/prometheus/client/dropwizard/DropwizardExports.java index 95e86016c..8c693a7a4 100644 --- a/simpleclient_dropwizard/src/main/java/io/prometheus/client/dropwizard/DropwizardExports.java +++ b/simpleclient_dropwizard/src/main/java/io/prometheus/client/dropwizard/DropwizardExports.java @@ -68,10 +68,6 @@ List fromGauge(String name, Gauge gauge) { * */ List fromSnapshotAndCount(String name, Snapshot snapshot, long count, double factor, String helpMessage) { - long sum = 0; - for (long i : snapshot.getValues()) { - sum += i; - } List samples = Arrays.asList( new MetricFamilySamples.Sample(name, Arrays.asList("quantile"), Arrays.asList("0.5"), snapshot.getMedian() * factor), new MetricFamilySamples.Sample(name, Arrays.asList("quantile"), Arrays.asList("0.75"), snapshot.get75thPercentile() * factor), @@ -79,8 +75,7 @@ List fromSnapshotAndCount(String name, Snapshot snapshot, l new MetricFamilySamples.Sample(name, Arrays.asList("quantile"), Arrays.asList("0.98"), snapshot.get98thPercentile() * factor), new MetricFamilySamples.Sample(name, Arrays.asList("quantile"), Arrays.asList("0.99"), snapshot.get99thPercentile() * factor), new MetricFamilySamples.Sample(name, Arrays.asList("quantile"), Arrays.asList("0.999"), snapshot.get999thPercentile() * factor), - new MetricFamilySamples.Sample(name + "_count", new ArrayList(), new ArrayList(), count), - new MetricFamilySamples.Sample(name + "_sum", new ArrayList(), new ArrayList(), sum * factor) + new MetricFamilySamples.Sample(name + "_count", new ArrayList(), new ArrayList(), count) ); return Arrays.asList( new MetricFamilySamples(name, Type.SUMMARY, helpMessage, samples) From c72bbf8ac1e84a87165dc279a7f812d1d4997c42 Mon Sep 17 00:00:00 2001 From: Felix Date: Tue, 24 May 2016 14:28:00 +0200 Subject: [PATCH 2/2] Remove _sum metrics from tests --- .../io/prometheus/client/dropwizard/DropwizardExportsTest.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/simpleclient_dropwizard/src/test/java/io/prometheus/client/dropwizard/DropwizardExportsTest.java b/simpleclient_dropwizard/src/test/java/io/prometheus/client/dropwizard/DropwizardExportsTest.java index 49cbf781f..80347db08 100644 --- a/simpleclient_dropwizard/src/test/java/io/prometheus/client/dropwizard/DropwizardExportsTest.java +++ b/simpleclient_dropwizard/src/test/java/io/prometheus/client/dropwizard/DropwizardExportsTest.java @@ -111,7 +111,6 @@ public void testHistogram() throws IOException { i += 1; } assertEquals(new Double(100), registry.getSampleValue("hist_count")); - assertEquals(new Double(4950), registry.getSampleValue("hist_sum")); for (double b : Arrays.asList(0.75, 0.95, 0.98, 0.99)) { assertEquals(new Double((b - 0.01) * 100), registry.getSampleValue("hist", new String[]{"quantile"}, new String[]{String.format("%.2f", b)})); @@ -137,7 +136,6 @@ public void testTimer() throws IOException, InterruptedException { // We slept for 1Ms so we ensure that all timers are above 1ms: assertTrue(registry.getSampleValue("timer", new String[]{"quantile"}, new String[]{"0.99"}) > 0.001); assertEquals(new Double(1.0D), registry.getSampleValue("timer_count")); - assertRegistryContainsMetrics("timer_count", "timer_sum"); } @Test