Skip to content

Exports the expiration time of your domains as prometheus metrics.

License

Notifications You must be signed in to change notification settings

alvagor/domain_exporter

 
 

Repository files navigation

domain_exporter

Exports the expiration time of your domains as prometheus metrics.

Environment variables

  • DOMAIN_EXPORTER_URL_PREFIX — use when HTTP endpoint served with a prefix, e.g.: For this endpoint http://example.org/exporters/domains set to /exporters/domains. Not really required since useful only to prevent breaking human-oriented links. Defaults to empty string.

Configuration

On the Prometheus settings, add the domain_exporter probe:

- job_name: domain
  metrics_path: /probe
  relabel_configs:
    - source_labels: [__address__]
      target_label: __param_target
    - target_label: __address__
      replacement: localhost:9222 # domain_exporter address
  static_configs:
    - targets:
      - carlosbecker.com
      - carinebecker.com
      - watchub.pw

It works more or less like Prometheus's blackbox_exporter.

Alerting rules examples can be found on the _examples folder.

You can configure domain_exporter to always export metrics for specific domains. Create configuration file (host field is optional):

domains:
- google.com
- name: reddit.com        
  host: whois.godaddy.com # <-- custom whois server for reddit.com

And pass file path as argument to domain_exporter:

domain_exporter --config=domains.yaml

Notice that if you do that, results are cached, and you should change your job metrics_path to /metrics instead.

Install

homebrew:

brew install caarlos0/tap/domain_exporter

docker:

docker run --rm -p 9222:9222 caarlos0/domain_exporter

apt:

echo 'deb [trusted=yes] https://repo.caarlos0.dev/apt/ /' | sudo tee /etc/apt/sources.list.d/caarlos0.list
sudo apt update
sudo apt install domain_exporter

yum:

echo '[caarlos0]
name=caarlos0
baseurl=https://repo.caarlos0.dev/yum/
enabled=1
gpgcheck=0' | sudo tee /etc/yum.repos.d/caarlos0.repo
sudo yum install domain_exporter

deb/rpm/apk:

Download the .apk, .deb or .rpm from the releases page and install with the appropriate commands.

manually:

Download the pre-compiled binaries from the releases page or clone the repository build from source.

Stargazers over time

Stargazers over time

About

Exports the expiration time of your domains as prometheus metrics.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 98.3%
  • Makefile 1.2%
  • Dockerfile 0.5%