summary refs log tree commit diff
path: root/synapse/metrics
diff options
context:
space:
mode:
authorAmber Brown <hawkowl@atleastfornow.net>2019-09-10 00:14:58 +1000
committerGitHub <noreply@github.com>2019-09-10 00:14:58 +1000
commitaeb9b2179eaa4b468bec937570d3ac7de7ccaaea (patch)
treef61e06d2116a4d8d5c1cf85719460e293dcdbc94 /synapse/metrics
parentMerge pull request #6003 from matrix-org/erikj/push_opentracing (diff)
downloadsynapse-aeb9b2179eaa4b468bec937570d3ac7de7ccaaea.tar.xz
Add a build info metric to Prometheus (#6005)
Diffstat (limited to 'synapse/metrics')
-rw-r--r--synapse/metrics/__init__.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/synapse/metrics/__init__.py b/synapse/metrics/__init__.py
index 488280b4a6..b5c9595cb9 100644
--- a/synapse/metrics/__init__.py
+++ b/synapse/metrics/__init__.py
@@ -29,11 +29,13 @@ from prometheus_client.core import REGISTRY, GaugeMetricFamily, HistogramMetricF
 
 from twisted.internet import reactor
 
+import synapse
 from synapse.metrics._exposition import (
     MetricsResource,
     generate_latest,
     start_http_server,
 )
+from synapse.util.versionstring import get_version_string
 
 logger = logging.getLogger(__name__)
 
@@ -385,6 +387,16 @@ event_processing_last_ts = Gauge("synapse_event_processing_last_ts", "", ["name"
 # finished being processed.
 event_processing_lag = Gauge("synapse_event_processing_lag", "", ["name"])
 
+# Build info of the running server.
+build_info = Gauge(
+    "synapse_build_info", "Build information", ["pythonversion", "version", "osversion"]
+)
+build_info.labels(
+    " ".join([platform.python_implementation(), platform.python_version()]),
+    get_version_string(synapse),
+    " ".join([platform.system(), platform.release()]),
+).set(1)
+
 last_ticked = time.time()