summary refs log tree commit diff
diff options
context:
space:
mode:
authorPaul "LeoNerd" Evans <paul@matrix.org>2016-10-27 18:08:15 +0100
committerPaul "LeoNerd" Evans <paul@matrix.org>2016-10-27 18:08:15 +0100
commitaac13b1f9a940f5661d5989e3045b4fc086f1e20 (patch)
treebd3a949736fc8a5e15fdfdf40be9f3a962a29efe
parentAllow creation of a 'subspace' within a Metrics object, returning another one (diff)
downloadsynapse-aac13b1f9a940f5661d5989e3045b4fc086f1e20.tar.xz
Pass the Metrics group into the process collector instead of having it find its own one; this avoids it needing to import from synapse.metrics
-rwxr-xr-xsynapse/app/homeserver.py2
-rw-r--r--synapse/metrics/process_collector.py10
2 files changed, 4 insertions, 8 deletions
diff --git a/synapse/app/homeserver.py b/synapse/app/homeserver.py
index f27150d411..6766befc4e 100755
--- a/synapse/app/homeserver.py
+++ b/synapse/app/homeserver.py
@@ -338,7 +338,7 @@ def setup(config_options):
         hs.get_replication_layer().start_get_pdu_cache()
 
         register_memory_metrics(hs)
-        register_process_collector()
+        register_process_collector(get_metrics_for("process"))
 
     reactor.callWhenRunning(start)
 
diff --git a/synapse/metrics/process_collector.py b/synapse/metrics/process_collector.py
index 1c851d9234..0e95582368 100644
--- a/synapse/metrics/process_collector.py
+++ b/synapse/metrics/process_collector.py
@@ -20,8 +20,6 @@ import os
 import stat
 from resource import getrusage, RUSAGE_SELF
 
-from synapse.metrics import get_metrics_for
-
 
 TICKS_PER_SEC = 100
 BYTES_PER_PAGE = 4096
@@ -111,10 +109,10 @@ def _process_fds():
     return counts
 
 
-def register_process_collector():
+def register_process_collector(process_metrics):
     # Legacy synapse-invented metric names
 
-    resource_metrics = get_metrics_for("process.resource")
+    resource_metrics = process_metrics.make_subspace("resource")
 
     resource_metrics.register_collector(update_resource_metrics)
 
@@ -125,12 +123,10 @@ def register_process_collector():
     # kilobytes
     resource_metrics.register_callback("maxrss", lambda: rusage.ru_maxrss * 1024)
 
-    get_metrics_for("process").register_callback("fds", _process_fds, labels=["type"])
+    process_metrics.register_callback("fds", _process_fds, labels=["type"])
 
     # New prometheus-standard metric names
 
-    process_metrics = get_metrics_for("process")
-
     if HAVE_PROC_SELF_STAT:
         process_metrics.register_callback(
             "cpu_user_seconds_total",