selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
adguard-exporter logo

Self-host adguard-exporter

v1.2.1

Prometheus exporter for AdGuard Home DNS metrics

ReleaseOpen SourceMIT
Updated4 months ago
LanguageGo
Setup difficultyEasy
Stars
166
Port
9618 (Prometheus metrics HTTP endpoint)
Requires
AdGuard Home
Docker
ghcr.io/henrywhitaker3/adguard-exporter
Install with Docker
Grafana dashboard showing AdGuard Home metrics including queries, blocked queries, and upstream server performance

What is adguard-exporter?

AdGuard Home Prometheus Exporter is a self-hosted monitoring tool that connects to one or more AdGuard Home instances and exports their metrics to Prometheus. It collects DNS query counts, blocked queries by category (filter lists, safe search, safe browsing), query processing times, top queried and blocked domains, top clients, upstream server response times, and DHCP lease information. A single exporter instance can monitor multiple AdGuard Home servers by providing comma-separated lists of servers, usernames, and passwords. The exporter runs as a Docker container (ghcr.io/henrywhitaker3/adguard-exporter) and listens on port 9618 by default. It includes a pre-built Grafana dashboard for visualization. The project is open-source under the MIT license.

adguard-exporter alternatives

Should you self-host adguard-exporter?

adguard-exporter scores 43/100 on selfhost.directory (how scoring works) and ranks #82 of 104 in Monitoring & observability. It has 166 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is MIT-licensed and written mostly in Go.

Its closest alternative on selfhost.directory is grafana (90/100, 77 585 stars). It scores higher overall, so compare the two before you pick. See adguard-exporter vs grafana side by side.

Features

  • Blocking metrics
  • DHCP monitoring
  • DNS query statistics
  • Grafana dashboard included
  • Multi-instance monitoring
  • Prometheus metrics export
  • Top domains and clients
  • Upstream server monitoring

adguard-exporter README

AdGuard Home Prometheus Exporter

This is a Prometheus exporter for AdGuard Home.

Dashboard

Installation

Using Docker

How to install adguard-exporter

Install adguard-exporter with Docker

Environment variables
ADGUARD_SERVERS, ADGUARD_USERNAMES, ADGUARD_PASSWORDS (required); INTERVAL, DEBUG, BIND_ADDR (optional)

$ docker run
-e 'ADGUARD_SERVERS=http://192.168.1.2'
-e 'ADGUARD_USERNAMES=demo'
-e 'ADGUARD_PASSWORDS=mypassword'
-e 'INTERVAL=15s' \ # Optional, defaults to 30s -p 9618:9618
ghcr.io/henrywhitaker3/adguard-exporter:latest

Requires AdGuard Home instance(s) to scrape. Configure ADGUARD_SERVERS, ADGUARD_USERNAMES, ADGUARD_PASSWORDS as required environment variables.

How to configure adguard-exporter

  • ADGUARD_SERVERSThe servers you want the exporter to scrape. Must include the scheme http(s) and port if non-standard.
  • ADGUARD_USERNAMESThe username to connect to the adguard api with. Must be in the same order as ADGUARD_SERVERS if scraping multiple instances.
  • ADGUARD_PASSWORDSThe password to connect to the adguard api with. Must be in the same order as ADGUARD_SERVERS if scraping multiple instances.
  • INTERVAL30sThe interval that the exporter scrapes metrics from the server
  • DEBUGfalseTurns on the go profiler

adguard-exporter releases & version history

More in Monitoring & observability

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…