• Stars
    star
    254
  • Rank 160,264 (Top 4 %)
  • Language
    Go
  • License
    MIT License
  • Created about 7 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Exports the expiration time of your domains as prometheus metrics.

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

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

More Repositories

1

env

A simple, zero-dependencies library to parse environment variables into structs
Go
4,722
star
2

starcharts

Plot your repository stars over time.
Go
1,016
star
3

dotfiles.zsh

Config files for ZSH, Java, Ruby, Go, Editors, Terminals and more.
Shell
700
star
4

svu

Semantic Version Util
Go
529
star
5

timer

A `sleep` with progress
Go
406
star
6

tasktimer

Task Timer (tt) is a dead simple TUI task timer
Go
398
star
7

dotfiles.fish

my dotfiles
Lua
306
star
8

fork-cleaner

Quickly clean up unused forks on your github account.
Go
261
star
9

org-stats

Get the contributor stats summary from all repos of any given organization
Go
180
star
10

dotfiles

❄️ my configurations for home-manager, nixOS, and nix-darwin
Nix
105
star
11

twitter-cleaner

Automatically delete tweets, retweets, and favorites from your timeline, and, if provided, from your twitter archive as well.
Go
97
star
12

jsonfmt

Like gofmt, but for JSON files.
Go
78
star
13

clone-org

Clone all repos of a github organization
Go
65
star
14

parttysh

something really useful: a party parrot over ssh
Go
58
star
15

httperr

func(w http.ResponseWriter, r *http.Request) error
Go
55
star
16

log

Colorful CLI logger
Go
54
star
17

speedtest-exporter

Exports speedtest-cli metrics in the prometheus format
Go
51
star
18

timea.go

timea.go (did you see what I did there?) is a simple library to print given times in "time ago" manner.
Go
45
star
19

testfs

A simple fs.FS implementation to be used inside tests.
Go
33
star
20

name-generator

quick'n'dirty name generator using docker's namesgenerator pkg
Go
26
star
21

github_releases_exporter

Exports GitHub release metrics to the Prometheus format
Go
24
star
22

version_exporter

Monitor the versions of the things you run and care about
Go
24
star
23

discord-applemusic-rich-presence

Discord's Rich Presence from Apple Music
Go
22
star
24

go-version

Version library extracted from sigs.k8s.io/release-utils
Go
21
star
25

xdg-open-svc

xdg-open as a service
Go
19
star
26

awesome-twitter-communities

A list of awesome twitter communities
19
star
27

go-gumroad

Easily check licenses against Gumroad's API.
Go
19
star
28

karmahub

Compares the amount of issues and pull requests you created with the amount of comments and code reviews you did.
Go
17
star
29

go-sshagent

A simple SSH Agent implementation, written in Go, mainly to be used within tests.
Go
15
star
30

caarlos0

15
star
31

fastcom-exporter

Prometheus Fast.com exporter
Go
15
star
32

promfmt

format prometheus .rules files
Go
13
star
33

goreleaserfiles

my goreleaser.yml files
Go
13
star
34

duration

Copy of stdlib's time.Duration, but ParseDuration accepts other bigger units such as days, weeks, months and years
Go
13
star
35

nur

My Nix User Repository
Nix
13
star
36

sshmarshal

Code copied from x/crypto and golang/go#37132
Go
13
star
37

ctrlc

Go library that provides an easy way of having a task that is context-aware and deals with SIGINT and SIGTERM signals
Go
13
star
38

kube-shutdown-after

Shutdown pods in sandbox clusters when it's not work hours
Go
12
star
39

home

my home k3s cluster
12
star
40

mdtree

Convert markdown lists into ASCII trees
Go
12
star
41

homekit-amt8000

Homekit bridge for Intelbras AMT8000 Alarm Systems
Go
11
star
42

esp8266-garage-door

Homekit controller and firmware for an ESP8266-based automated garage door
Go
8
star
43

uhr

Zeichenorientierte Benutzerschnittstelle Uhr
Go
8
star
44

meta

reusable github actions workflows and other shareable configuration files 🫥
Go
7
star
45

solarman-exporter

Prometheus Exporter for SolarmanPV
Go
6
star
46

linktree

static linktree with tailwindcss and html
HTML
6
star
47

homekit-shelly

Homekit bridge for Shelly Flood and Smoke sensors
Go
5
star
48

homekit-solarman

Homekit bridge for Solarman Inverters
Go
5
star
49

sinkhole

docker image that just responds any path with 200 and does nothing, for testing
Go
5
star
50

advent-of-code-2022

Advent Of Code 2022 — In Rust, btw
Rust
5
star
51

teatest-example

example teatest app
Go
4
star
52

homebrew-tap

Homebrew Formulae to my binaries, powered by @goreleaser
Ruby
4
star
53

beckeros

Rust
3
star
54

ziglings

learning some zig :P
Zig
3
star
55

go-solarman

Go client for the SolarmanPV API
Go
2
star
56

sync

Simple sync primitives I use here and there, extracted so I can reuse them
Go
2
star
57

transactional

a sqlx transaction wrapper for http.Handler
Go
2
star
58

servers

ansible playbook for my servers
Jinja
2
star
59

.github

github config
1
star
60

dockerfiles

Dockerfile
1
star
61

fish-git-fetch-merge

git fetch && git merge in a breeze
Shell
1
star