summary refs log tree commit diff
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2019-06-14 14:07:32 +0100
committerErik Johnston <erik@matrix.org>2019-06-14 14:07:32 +0100
commit3ed595e327aee6d45ed0371c98e828d724c26b2d (patch)
tree12c4ace5f37569f1c298043ed3989995dc4e22a5
parentTrack deactivated accounts in the database (#5378) (diff)
downloadsynapse-3ed595e327aee6d45ed0371c98e828d724c26b2d.tar.xz
Prometheus histograms are cumalative
-rw-r--r--synapse/metrics/__init__.py1
-rw-r--r--synapse/storage/events.py3
-rw-r--r--tests/storage/test_event_metrics.py20
3 files changed, 12 insertions, 12 deletions
diff --git a/synapse/metrics/__init__.py b/synapse/metrics/__init__.py
index 0d3ae1a43d..8aee14a8a8 100644
--- a/synapse/metrics/__init__.py
+++ b/synapse/metrics/__init__.py
@@ -224,7 +224,6 @@ class BucketCollector(object):
             for i, bound in enumerate(self.buckets):
                 if x <= bound:
                     buckets[bound] = buckets.get(bound, 0) + data[x]
-                    break
 
         for i in self.buckets:
             res.append([str(i), buckets.get(i, 0)])
diff --git a/synapse/storage/events.py b/synapse/storage/events.py
index 1578403f79..f631fb1733 100644
--- a/synapse/storage/events.py
+++ b/synapse/storage/events.py
@@ -228,7 +228,8 @@ class EventsStore(
         self._state_resolution_handler = hs.get_state_resolution_handler()
 
         # Collect metrics on the number of forward extremities that exist.
-        self._current_forward_extremities_amount = {}
+        # Counter of number of extremities to count
+        self._current_forward_extremities_amount = c_counter()
 
         BucketCollector(
             "synapse_forward_extremities",
diff --git a/tests/storage/test_event_metrics.py b/tests/storage/test_event_metrics.py
index 1655fcdafc..19f9ccf5e0 100644
--- a/tests/storage/test_event_metrics.py
+++ b/tests/storage/test_event_metrics.py
@@ -64,16 +64,16 @@ class ExtremStatisticsTestCase(HomeserverTestCase):
         expected = set([
             b'synapse_forward_extremities_bucket{le="1.0"} 0.0',
             b'synapse_forward_extremities_bucket{le="2.0"} 2.0',
-            b'synapse_forward_extremities_bucket{le="3.0"} 0.0',
-            b'synapse_forward_extremities_bucket{le="5.0"} 0.0',
-            b'synapse_forward_extremities_bucket{le="7.0"} 1.0',
-            b'synapse_forward_extremities_bucket{le="10.0"} 0.0',
-            b'synapse_forward_extremities_bucket{le="15.0"} 0.0',
-            b'synapse_forward_extremities_bucket{le="20.0"} 0.0',
-            b'synapse_forward_extremities_bucket{le="50.0"} 0.0',
-            b'synapse_forward_extremities_bucket{le="100.0"} 0.0',
-            b'synapse_forward_extremities_bucket{le="200.0"} 0.0',
-            b'synapse_forward_extremities_bucket{le="500.0"} 0.0',
+            b'synapse_forward_extremities_bucket{le="3.0"} 2.0',
+            b'synapse_forward_extremities_bucket{le="5.0"} 2.0',
+            b'synapse_forward_extremities_bucket{le="7.0"} 3.0',
+            b'synapse_forward_extremities_bucket{le="10.0"} 3.0',
+            b'synapse_forward_extremities_bucket{le="15.0"} 3.0',
+            b'synapse_forward_extremities_bucket{le="20.0"} 3.0',
+            b'synapse_forward_extremities_bucket{le="50.0"} 3.0',
+            b'synapse_forward_extremities_bucket{le="100.0"} 3.0',
+            b'synapse_forward_extremities_bucket{le="200.0"} 3.0',
+            b'synapse_forward_extremities_bucket{le="500.0"} 3.0',
             b'synapse_forward_extremities_bucket{le="+Inf"} 3.0',
             b'synapse_forward_extremities_count 3.0',
             b'synapse_forward_extremities_sum 10.0',