summary refs log tree commit diff
path: root/synapse
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2018-01-19 23:51:04 +0000
committerRichard van der Hoff <richard@matrix.org>2018-01-19 23:51:04 +0000
commit87b7d727605c8e122adb768b7487dfcae830593f (patch)
tree9fe1e8dd97b6a970aa527d615649feabbfff86d5 /synapse
parentMerge pull request #2814 from matrix-org/rav/fix_urlcache_thumbs (diff)
downloadsynapse-87b7d727605c8e122adb768b7487dfcae830593f.tar.xz
Add some comments about the reactor tick time metric
Diffstat (limited to 'synapse')
-rw-r--r--synapse/metrics/__init__.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/synapse/metrics/__init__.py b/synapse/metrics/__init__.py
index 2265e6e8d6..e0cfb7d08f 100644
--- a/synapse/metrics/__init__.py
+++ b/synapse/metrics/__init__.py
@@ -146,10 +146,15 @@ def runUntilCurrentTimer(func):
             num_pending += 1
 
         num_pending += len(reactor.threadCallQueue)
-
         start = time.time() * 1000
         ret = func(*args, **kwargs)
         end = time.time() * 1000
+
+        # record the amount of wallclock time spent running pending calls.
+        # This is a proxy for the actual amount of time between reactor polls,
+        # since about 25% of time is actually spent running things triggered by
+        # I/O events, but that is harder to capture without rewriting half the
+        # reactor.
         tick_time.inc_by(end - start)
         pending_calls_metric.inc_by(num_pending)