Monitorare AdGuard tramite Grafana e Prometheus
AdGuard espone di default le sue metriche di utilizzo alla pagina /metrics , ma questi dati non possono essere utilizzati da Prometheus così come sono. In questo articolo vedremo insieme come estrapolare i dati in modo da visualizzarli su Grafana.
Per istruzioni su come installare e configurare AdGuard Home, segui la mia guida apposita.
Introduzione
AdGuard espone di default le sue metriche di utilizzo alla pagina /metrics , ma questi dati non possono essere utilizzati da Prometheus così come sono.
Per estrarre le metriche da AdGuard, importarle su Prometheus e visualizzarle su Grafana vi servirà una macchina con Docker.
Installazione
Sulla vostra macchina Docker eseguite il comando docker run come segue, valorizzando l'indirizzo IP del server AdGuard, username e password da usare per accedere, ed opzionalmente modificando l'intervallo di scraping.
docker run \
-e 'ADGUARD_SERVERS=http://192.168.0.27' \
-e 'ADGUARD_USERNAMES=user' \
-e 'ADGUARD_PASSWORDS=password' \
-e 'INTERVAL=15s' \ # Optional, defaults to 30s
-p 9618:9618 \
ghcr.io/henrywhitaker3/adguard-exporter:latestSe avete più di un server AdGuard, potete monitorarli tutti con una sola istanza di Adguard-Exporter, specificando URL, Username e Password per ciascuno:
docker run \
-e 'ADGUARD_SERVERS=http://192.168.0.27,http://192.168.0.28' \
-e "ADGUARD_USERNAMES=$USERNAME1,$USERNAME2" \
-e "ADGUARD_PASSWORDS=$PASSWORD1,$PASSWORD2" \
-p 9618:9618 \
ghcr.io/henrywhitaker3/adguard-exporter:latestUna volta creato ed avviato il container di Adguard-Exporter, è il momento di censirlo su Prometheus per importare le metriche.
Configurazione su Prometheus
Non hai ancora installato Prometheus?
Segui la mia guida dove ti illustro come fare.
Modificate il file prometheus.yml aggiungendo il seguente job agli scrape_configs, avendo cura di impostare l'indirizzo IP della vostra macchina docker (per raggiungere Adguard-Exporter) al posto di INDIRIZZOIP
- job_name: 'adguard'
static_configs:
- targets: ['INDIRIZZOIP:9618']Riavviate Prometheus e controllate che non segnali errori
sudo systemctl restart prometheus.service
sudo systemctl status prometheus.servicePotete ora quindi creare la vostra Dashboard su Grafana leggendo le metriche provenienti dal job_name "adguard".
In alternativa, potete importare una dashboard già pronta creata appositamente per questo container di docker.

