Skip to content

Monitoring and alerts ​

With features.monitoring: true (default) the following is installed:

PartDoes
PrometheusCollects metrics from the server, the containers, Traefik, the databases and the services' health checks
GrafanaShows metrics and logs in ready-made dashboards
LokiCollects the containers' logs
AlertmanagerSends alerts by e-mail
Exporters and health checksnode-exporter, cAdvisor, Redis, PostgreSQL, Kafka (and PgBouncer if used), plus checks of every service's /health and of the TURN server

Alertmanager, exporters and alert rules can be switched off with monitoring.alerting: false.

Grafana ​

Open https://admin.example.se/grafana. With monitoring.grafana_public: true Grafana is also available at https://grafana.example.se (requires a DNS record).

The user name is admin. The password:

bash
sudo grep grafana_password /opt/eurion/deploy/generated/group_vars/secrets.yml

Ready-made dashboards: system, containers, Traefik, services, Redis, PostgreSQL, Kafka, TURN, gateway, e-mail, MinIO, PgBouncer, video and logs. The home page is the gateway dashboard.

Logs in Grafana

Explore → Loki and the query {container_name=~"eurion-.*"} show the logs of every Eurion container in one place.

Alerts by e-mail ​

Alertmanager sends alerts to monitoring.alert_email, or to organization.admin_email if it is not set. It uses the same SMTP server as the rest of Eurion (smtp in the configuration).

No SMTP, no alerts

If smtp.host is empty, no alerts are sent at all, even though Alertmanager is running. See Outgoing e-mail.

The subject line looks like this:

text
[FIRING] Eurion (example.se): DiskSpaceLow
[RESOLVED] Eurion (example.se): DiskSpaceLow

An active alert is sent again every four hours, critical alerts every hour. You also get a message when the alert clears.

Alert rules ​

AlertLevelFires when
HighCPUUsage / CriticalCPUUsagewarning / criticalThe server's CPU above 85 % for 5 min / above 95 % for 2 min
LowMemorycriticalLess than 10 % free memory for 5 min
DiskSpaceLow / DiskSpaceCriticalwarning / criticalThe root file system more than 85 % / 95 % full
ServiceDowncriticalA service's health check fails for 1 min
ServiceSlowResponsewarningThe health check takes more than 2 s for 5 min
CoturnDowncriticalThe TURN server does not answer for 2 min
RedisDown, PostgresDown, KafkaBrokerDowncriticalRedis, PostgreSQL or Kafka down
RedisHighMemorywarningRedis uses more than 85 % of its memory limit
PostgresHighConnectionswarningMore than 80 connections to PostgreSQL
KafkaConsumerLagwarningMore than 10,000 unprocessed events in Kafka
TraefikHighErrorRatecriticalMore than 5 % of responses are server errors
TraefikServiceDowncriticalA service returns errors on more than 25 % of requests
TraefikTLSCertExpiringSoonwarningA certificate expires within 14 days
ContainerRestartLoopcriticalA container restarted more than 3 times in 15 min
ContainerOOMcriticalA container ran out of memory
ContainerHighCPUwarningA container uses more than 90 % CPU
ContainerHighMemorywarningA container is close to its memory limit (only containers with a limit, see resources)
MinIODiskUsageHigh, MinIODiskOffline, MinIOHighErrorRatewarning / criticalProblems with file storage
PgBouncerPoolSaturation, PgBouncerClientsWaitingwarningThe connection pool is nearly full (only with PgBouncer)
RedisExporterDown, PostgresExporterDown, KafkaExporterDown, TraefikMetricsDownwarningA metrics source does not answer

Quick check without Grafana ​

bash
sudo eurion-ctl status       # services and infrastructure
sudo eurion-ctl health       # stopped containers, restarts, disk, connections, backups

See Troubleshooting for what the output means.

Eurion — communication that runs on your own server.