diff options
author | David Baker <dave@matrix.org> | 2015-04-24 09:37:54 +0100 |
---|---|---|
committer | David Baker <dave@matrix.org> | 2015-04-24 09:37:54 +0100 |
commit | 6532b6e60776f2c732b06e5535af068e9a049d6d (patch) | |
tree | 4bbfeddf91f35c0f3744b346f30d6e3813c22196 /docs/metrics-howto.rst | |
parent | Dedicated error code for failed 3pid auth verification (diff) | |
parent | No commas here, otherwise our error string constants become tuples. (diff) | |
download | synapse-6532b6e60776f2c732b06e5535af068e9a049d6d.tar.xz |
Merge branch 'develop' into csauth
Conflicts: synapse/http/server.py
Diffstat (limited to 'docs/metrics-howto.rst')
-rw-r--r-- | docs/metrics-howto.rst | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/docs/metrics-howto.rst b/docs/metrics-howto.rst new file mode 100644 index 0000000000..c1f5ae2174 --- /dev/null +++ b/docs/metrics-howto.rst @@ -0,0 +1,50 @@ +How to monitor Synapse metrics using Prometheus +=============================================== + +1: Install prometheus: + Follow instructions at http://prometheus.io/docs/introduction/install/ + +2: Enable synapse metrics: + Simply setting a (local) port number will enable it. Pick a port. + prometheus itself defaults to 9090, so starting just above that for + locally monitored services seems reasonable. E.g. 9092: + + Add to homeserver.yaml + + metrics_port: 9092 + + Restart synapse + +3: Check out synapse-prometheus-config + https://github.com/matrix-org/synapse-prometheus-config + +4: Add ``synapse.html`` and ``synapse.rules`` + The ``.html`` file needs to appear in prometheus's ``consoles`` directory, + and the ``.rules`` file needs to be invoked somewhere in the main config + file. A symlink to each from the git checkout into the prometheus directory + might be easiest to ensure ``git pull`` keeps it updated. + +5: Add a prometheus target for synapse + This is easiest if prometheus runs on the same machine as synapse, as it can + then just use localhost:: + + global: { + rule_file: "synapse.rules" + } + + job: { + name: "synapse" + + target_group: { + target: "http://localhost:9092/" + } + } + +6: Start prometheus:: + + ./prometheus -config.file=prometheus.conf + +7: Wait a few seconds for it to start and perform the first scrape, + then visit the console: + + http://server-where-prometheus-runs:9090/consoles/synapse.html |