Monitoring
Monitoring relies on Prometheus 🡕 (metrics), Grafana 🡕 (dashboards) and Loki 🡕 (logs). It is organized by zone: one host collects, the others expose their metrics.
| Role | Who | What |
|---|---|---|
| Collector | Host with prometheus (+ monitoring, + loki) | Metrics & alerts, dashboards, logs |
| Monitored node | Hosts tagged monitoring-node | node-exporter (system metrics) |
| Log source | Hosts behind Caddy | Alloy pushes access logs |
prometheus (metrics + alerts) and monitoring (Grafana) are two separate
services on the same host; Grafana requires Prometheus. Details are in
Monitoring & Alerts.
Enable
Section titled “Enable”Monitoring is a service. On the collector:
services: prometheus: # metrics + alerts (required by monitoring) monitoring: domain: "stats" # → stats.<zone>.domain.tld- Nodes to monitor receive the
monitoring-nodetag from their zone. lokifollowsmonitoring: Caddy logs are collected automatically as soon as Caddy and monitoring are active.
Useful settings
Section titled “Useful settings”| Option | Effect | Default |
|---|---|---|
prometheus.retentionTime | Prometheus metrics retention | 30d |
monitoring.isNode | Makes the host a monitored node | follows the tag |
monitoring.kioskTarget | Dashboard displayed at the root | node-exporter |