.. include:: ../global.rst.inc
.. _monitoring:
Monitoring
==========
Monitoring endpoints are configured in the ``global.monitoring`` section of the config file.
.. _monitoring-prometheus:
Prometheus & Grafana
--------------------
zrepl can expose `Prometheus metrics `_ via HTTP.
The ``listen`` attribute is a `net.Listen `_ string for tcp, e.g. ``:9091`` or ``127.0.0.1:9091``.
The ``listen_freebind`` attribute is :ref:`explained here `.
The Prometheus monitoring job appears in the ``zrepl control`` job list and may be specified **at most once**.
zrepl also ships with an importable `Grafana `_ dashboard that consumes the Prometheus metrics:
see :repomasterlink:`dist/grafana`.
The dashboard also contains some advice on which metrics are important to monitor.
.. NOTE::
At the time of writing, there is no stability guarantee on the exported metrics.
::
global:
monitoring:
- type: prometheus
listen: ':9091'
listen_freebind: true # optional, default false