]> git.sesse.net Git - nageru-docs/blob - monitoring.rst
8e64307e4ef9ce1b9f8e3ad2ecdf18906ae2f2b7
[nageru-docs] / monitoring.rst
1 Monitoring
2 ==========
3
4 If you have a large Nageru installation, you may want to monitor it remotely,
5 as opposed to just eyeballing the UI and occasionally checking into the stream
6 to verify everything is OK. As of version 1.6.1, Nageru supports native
7 `Prometheus <https://prometheus.io/>`_ metrics.
8
9 This section is not intended to explain Prometheus; for that, see the Prometheus
10 documentation. You do not need a separate exporter for Nageru, you simply point
11 Prometheus to the same HTTP port as is used for your stream, and it will fetch
12 all metrics from the /metrics endpoint.
13
14 Nageru's metrics export basically everything you can get from the UI and much more.
15 Unfortunately, Prometheus is relatively inefficient when it comes to dealing with
16 histograms, and many of the values Nageru tries to measure (like latency through
17 the various points in the pipeline) can take on a quite wide range of values.
18 Thus, most values that would normally be exported as Prometheus histograms are
19 exported as summaries over one-minute sliding windows instead. This means they
20 are highly precise, but unfortunately, it means you cannot aggregate them
21 meaningfully.
22
23
24 Grafana dashboard
25 -----------------
26
27 Nageru ships with an example `Grafana <https://grafana.com/>`_ dashboard exported
28 in JSON format; it does not graph all metrics, but it should cover most of the
29 interesting parts. Note that there is currently no guarantee of forward or
30 backward compatibility in metrics, so if Nageru internals change significantly,
31 some graphs could stop working. Of course, you can change the dashboard as you
32 see fit; if you don't use e.g. HDMI/SDI output, you will probably want to
33 remove the panels related to it.