This is a simple server that scrapes HAProxy stats and exports them via HTTP for Prometheus consumption.
To run it:
./haproxy_exporter [flags]Help on flags:
./haproxy_exporter --helpFor more information check the source code documentation. All of the core developers are accessible via the Prometheus Developers mailinglist.
Specify custom URLs for the HAProxy stats port using the --haproxy.scrape-uri
flag. For example, if you have set stats uri /baz,
haproxy_exporter --haproxy.scrape-uri="http://localhost:5000/baz?stats;csv"Or to scrape a remote host:
haproxy_exporter --haproxy.scrape-uri="http://haproxy.example.com/haproxy?stats;csv"Note that the ;csv is mandatory (and needs to be quoted).
If your stats port is protected by basic auth, add the credentials to the scrape URL:
haproxy_exporter --haproxy.scrape-uri="http://user:[email protected]/haproxy?stats;csv"You can also scrape HTTPS URLs. Certificate validation is enabled by default, but
you can disable it using the --haproxy.ssl-verify=false flag:
haproxy_exporter --haproxy.ssl-verify=false --haproxy.scrape-uri="https://haproxy.example.com/haproxy?stats;csv"As alternative to localhost HTTP a stats socket can be used. Enable the stats socket in HAProxy with for example:
stats socket /run/haproxy/admin.sock mode 660 level admin
The scrape URL uses the 'unix:' scheme:
haproxy_exporter --haproxy.scrape-uri=unix:/run/haproxy/admin.sockTo run the haproxy exporter as a Docker container, run:
docker run -p 9101:9101 quay.io/prometheus/haproxy-exporter:v0.9.0 --haproxy.scrape-uri="http://user:[email protected]/haproxy?stats;csv"make buildmake testApache License 2.0, see LICENSE.
