|
|
|
@ -1,10 +1,10 @@ |
|
|
|
|
How to monitor Synapse metrics using Prometheus |
|
|
|
|
=============================================== |
|
|
|
|
|
|
|
|
|
1: install prometheus: |
|
|
|
|
1: Install prometheus: |
|
|
|
|
Follow instructions at http://prometheus.io/docs/introduction/install/ |
|
|
|
|
|
|
|
|
|
2: enable synapse metrics: |
|
|
|
|
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: |
|
|
|
@ -15,17 +15,18 @@ How to monitor Synapse metrics using Prometheus |
|
|
|
|
|
|
|
|
|
Restart synapse |
|
|
|
|
|
|
|
|
|
3: check out synapse-prometheus-config |
|
|
|
|
3: Check out synapse-prometheus-config |
|
|
|
|
https://github.com/matrix-org/synapse-prometheus-config |
|
|
|
|
|
|
|
|
|
4: arrange for synapse.html to appear in prometheus's "consoles" |
|
|
|
|
directory - symlink might be easiest to ensure `git pull` keeps it |
|
|
|
|
updated. |
|
|
|
|
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: arrange for synapse.rules to be invoked from the main |
|
|
|
|
prometheus.conf and add a synapse target. This is easiest if |
|
|
|
|
prometheus runs on the same machine as synapse, as it can then just |
|
|
|
|
use localhost:: |
|
|
|
|
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" |
|
|
|
@ -39,11 +40,11 @@ How to monitor Synapse metrics using Prometheus |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
6: start prometheus:: |
|
|
|
|
6: Start prometheus:: |
|
|
|
|
|
|
|
|
|
./prometheus -config.file=prometheus.conf |
|
|
|
|
|
|
|
|
|
7: wait a few seconds for it to start and perform the first scrape, |
|
|
|
|
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 |
|
|
|
|