summary refs log tree commit diff
path: root/synapse/metrics/__init__.py
diff options
context:
space:
mode:
authorPaul Evans <leonerd@leonerd.org.uk>2016-10-27 18:27:36 +0100
committerGitHub <noreply@github.com>2016-10-27 18:27:36 +0100
commitf9d5b60a2422ed4b7e66d456537c5f0bce51f382 (patch)
treeb6ae0b9fb42815290f727f98db841d82a04edaf0 /synapse/metrics/__init__.py
parentMerge pull request #1183 from matrix-org/erikj/fix_email_update (diff)
parentSet up the process collector during metrics __init__; that way all split-proc... (diff)
downloadsynapse-f9d5b60a2422ed4b7e66d456537c5f0bce51f382.tar.xz
Merge pull request #1184 from matrix-org/paul/metrics
Bugfix for process-wide metric export on split processes
Diffstat (limited to 'synapse/metrics/__init__.py')
-rw-r--r--synapse/metrics/__init__.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/synapse/metrics/__init__.py b/synapse/metrics/__init__.py
index a6b868775d..7041da25ce 100644
--- a/synapse/metrics/__init__.py
+++ b/synapse/metrics/__init__.py
@@ -24,6 +24,7 @@ from .metric import (
     CounterMetric, CallbackMetric, DistributionMetric, CacheMetric,
     MemoryUsageMetric,
 )
+from .process_collector import register_process_collector
 
 
 logger = logging.getLogger(__name__)
@@ -41,6 +42,9 @@ class Metrics(object):
     def __init__(self, name):
         self.name_prefix = name
 
+    def make_subspace(self, name):
+        return Metrics("%s_%s" % (self.name_prefix, name))
+
     def register_collector(self, func):
         all_collectors.append(func)
 
@@ -118,6 +122,8 @@ reactor_metrics.register_callback(
     "gc_counts", lambda: {(i,): v for i, v in enumerate(gc.get_count())}, labels=["gen"]
 )
 
+register_process_collector(get_metrics_for("process"))
+
 
 def runUntilCurrentTimer(func):