sensu / haproxy-check Goto Github PK
View Code? Open in Web Editor NEWA Sensu check and metrics collector for HAProxy
License: MIT License
A Sensu check and metrics collector for HAProxy
License: MIT License
This Sensu plugin will perform on-demand monitoring of HAProxy instances. It will collect metrics in Prometheus format, emitting them on STDOUT. Additionally, it may perform analysis to determine the health of those instances, the results of which will be presented as one or more exit status levels.
Prior Art:
haproxy
plugin (Go, MIT License)haproxy
module (Python, Datadog License)Misc Docs:
--url
the url to the status endpoint, eg. http://<hostname>:<port>/<status_path>
(default: "unix:///run/haproxy/admin.sock")--backends
comma-separated list of backends to fetch stats from. If not specified, all HAProxy backends will be included.--admin-user
admin username for basic auth--admin-pass
admin password for basic authtls=custom
parameter specified in server uri)--tls-ca
: Path the the ca.pem
file.--tls-cert
: Path to the cert.pem
file.--tls-key
: Path to the key.pem
file.--insecure-skip-verify
: If true
, use TLS but skip chain & host verification (default: false
)NOTE: Datadog has an extensive range of options, which we might want to analyze for beyond-MVP support.
The provided URL must be validated. If supplied, the TLS options must be validated.
All metrics should be output in Prometheus format.
MVP to light up the Sumo Logic Dashboards:
Metrics:
haproxy_active_servers
haproxy_backup_servers
haproxy_bin
haproxy_bout
haproxy_chkfail
haproxy_ctime
haproxy_dreq
haproxy_dresp
haproxy_econ
haproxy_ereq
haproxy_eresp
haproxy_http_response_1xx
haproxy_http_response_2xx
haproxy_http_response_3xx
haproxy_http_response_4xx
haproxy_http_response_5xx
haproxy_http_response_other
haproxy_qcur
haproxy_qmax
haproxy_qtime
haproxy_rate
haproxy_rtime
haproxy_scur
haproxy_slim
haproxy_smax
haproxy_ttime
haproxy_weight
haproxy_wredis
haproxy_wretr
Tags:
proxy_cluster
host
type
: proxy session type. one of frontend
, backend
, or server
proxy_system
component
proxy
sv
: service nameNOTE: These are the tags/metrics that are seen within the Sumo Logic dashboards, which seem to be based on the Telegraf output. Probably the best place to start looking for details.
For parity w/ Datadog, here's the list of metrics they produce (also available in CSV format).
This metric name map might be useful: https://github.com/DataDog/integrations-core/blob/master/haproxy/datadog_checks/haproxy/metrics.py
Out of scope (for MVP):
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.