A small Prometheus exporter that checks a set of URLs for keywords defined in a YAML config and exposes a metric indicating whether each keyword was found.
keyword_found{name,url,keyword}:1if keyword found,0if not foundkeyword_check_errors_total{name,url}: count of errors while checking a targetkeyword_last_check_timestamp_seconds{name,url}: unix timestamp of last check
Example config.yaml:
interval_seconds: 30
targets:
- name: example
url: "https://example.com"
keyword: "Example Domain"
case_insensitive: false
timeout_seconds: 10
max_bytes: 5242880go run . -config config.yaml -listen :8182docker compose -f docker-compose-dev.yml up --build
Then scrape http://localhost:8182/metrics from Prometheus.
| Default Port | Name | Listing |
|---|---|---|
| 8182 | KeywordScope | Prometheus |
interval_secondsdefaults to 30 seconds if not set or set to0.timeout_secondsdefaults to 10 seconds;max_bytesdefaults to 5MB.- One goroutine per target performs checks on the interval.
Please check our Contributing Guide on how you can contribute.