Thanks for the reply.

  Ideally observium would work out what front and backends have been specified from the output of HAProxyctl and provide stats for those. There are general stats though, provided for the “engine” of HAProxy with, e.g.

 

haproxyctl show info

 

Name: HAProxy

Version: 1.8.2-1ppa1~xenial

Release_date: 2017/12/26

Nbproc: 1

Process_num: 1

Pid: 5515

Uptime: 6d 23h24m08s

Uptime_sec: 602648

Memmax_MB: 0

PoolAlloc_MB: 0

PoolUsed_MB: 0

PoolFailed: 0

Ulimit-n: 4034

Maxsock: 4034

Maxconn: 2000

Hard_maxconn: 2000

CurrConns: 8

CumConns: 207821

CumReq: 371215

MaxSslConns: 0

CurrSslConns: 16

CumSslConns: 705404

Maxpipes: 0

PipesUsed: 0

PipesFree: 0

ConnRate: 2

ConnRateLimit: 0

MaxConnRate: 31

SessRate: 2

SessRateLimit: 0

MaxSessRate: 31

SslRate: 2

SslRateLimit: 0

MaxSslRate: 31

SslFrontendKeyRate: 2

SslFrontendMaxKeyRate: 19

SslFrontendSessionReuse_pct: 0

SslBackendKeyRate: 0

SslBackendMaxKeyRate: 2

SslCacheLookups: 31451

SslCacheMisses: 28166

CompressBpsIn: 0

CompressBpsOut: 0

CompressBpsRateLim: 0

ZlibMemUsage: 0

MaxZlibMemUsage: 0

Tasks: 26

Run_queue: 0

Idle_pct: 98

node: haproxy-rp1

 

 

If it could cope with parsing frontend and backend info, all sorts are available, .e.g

 

haproxyctl show stat

 

#pxname,svname,qcur,qmax,scur,smax,slim,stot,bin,bout,dreq,dresp,ereq,econ,eresp,wretr,wredis,status,weight,act,bck,chkfail,chkdown,lastchg,downtime,qlimit,pid,iid,sid,throttle,lbtot,tracked,type,rate,rate_lim,rate_max,check_status,check_code,check_duration,hrsp_1xx,hrsp_2xx,hrsp_3xx,hrsp_4xx,hrsp_5xx,hrsp_other,hanafail,req_rate,req_rate_max,req_tot,cli_abrt,srv_abrt,comp_in,comp_out,comp_byp,comp_rsp,lastsess,last_chk,last_agt,qtime,ctime,rtime,ttime,agent_status,agent_code,agent_duration,check_desc,agent_desc,check_rise,check_fall,check_health,agent_rise,agent_fall,agent_health,addr,cookie,mode,algo,conn_rate,conn_rate_max,conn_tot,intercepted,dcon,dses,

connections_acme_challenge_80,BACKEND,0,0,0,0,1,0,0,0,0,0,,0,0,0,0,UP,0,0,0,,0,698129,,,1,2,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,0,0,0,0,0,0,0,-1,,,0,0,0,0,,,,,,,,,,,,,,http,roundrobin,,,,,,,

connections_deadend_80,BACKEND,0,0,0,0,1,0,0,0,0,0,,0,0,0,0,UP,0,0,0,,0,698129,,,1,3,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,0,0,0,0,0,0,0,-1,,,0,0,0,0,,,,,,,,,,,,,,http,roundrobin,,,,,,,

connections_mail_443,BACKEND,0,0,0,0,1,0,0,0,0,0,,0,0,0,0,UP,0,0,0,,0,698129,,,1,4,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,0,0,0,0,0,0,0,-1,,,0,0,0,0,,,,,,,,,,,,,,http,roundrobin,,,,,,,

connections_deadend_443,BACKEND,0,0,0,0,1,0,0,0,0,0,,0,0,0,0,UP,0,0,0,,0,698129,,,1,5,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,0,0,0,0,0,0,0,-1,,,0,0,0,0,,,,,,,,,,,,,,http,roundrobin,,,,,,,

ft_web_80,FRONTEND,,,0,2,2000,173,23454,21113,0,0,24,,,,,OPEN,,,,,,,,,1,6,0,,,,0,0,0,8,,,,0,0,149,24,0,0,,0,8,173,,,0,0,0,0,,,,,,,,,,,,,,,,,,,,,http,,0,8,173,0,0,0,

bk_acme_challenge,prh-haproxy-cp1,0,0,0,0,,0,0,0,,0,,0,0,0,0,no check,1,1,0,,,698129,,,1,7,1,,0,,2,0,,0,,,,0,0,0,0,0,0,,,,,0,0,,,,,-1,,,0,0,0,0,,,,,,,,,,,,127.0.0.1:81,,http,,,,,,,,

bk_acme_challenge,BACKEND,0,0,0,0,200,0,0,0,0,0,,0,0,0,0,UP,1,1,0,,0,698129,0,,1,7,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,0,0,0,0,0,0,0,-1,,,0,0,0,0,,,,,,,,,,,,,,http,roundrobin,,,,,,,

bk_deadend_80,BACKEND,0,0,0,0,200,0,0,0,0,0,,0,0,0,0,UP,0,0,0,,0,698129,,,1,8,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,0,0,0,0,0,0,0,-1,,,0,0,0,0,,,,,,,,,,,,,,http,roundrobin,,,,,,,

ft_web_8443,FRONTEND,,,0,12,2000,60,175866,367414,0,0,0,,,,,OPEN,,,,,,,,,1,9,0,,,,0,0,0,8,,,,0,235,32,0,5,0,,0,43,272,,,0,0,0,0,,,,,,,,,,,,,,,,,,,,,http,,0,8,2669,0,0,0,

ft_web_443,FRONTEND,,,13,44,2000,241103,675133100,4430775375,0,0,1954,,,,,OPEN,,,,,,,,,1,10,0,,,,0,1,0,20,,,,0,173390,703,50297,72513,16757,,1,40,313670,,,0,0,0,0,,,,,,,,,,,,,,,,,,,,,http,,2,53,243062,0,0,0,

bk_mail_443,mail,0,0,10,39,,311220,674980983,4430694083,,0,,0,72138,0,0,UP,1,1,0,0,0,698129,0,,1,11,1,,1440,,2,1,,43,L6OK,,1,0,173626,32,48351,311,0,,,,,20419,11120,,,,,1,,,0,1,1847,5663,,,,Layer6 check passed,,10,20,29,,,,10.51.0.140:443,1,http,,,,,,,,

bk_mail_443,BACKEND,0,0,10,39,400,311228,674980983,4430694083,0,0,,0,72138,0,0,UP,1,1,0,,0,698129,0,,1,11,0,,1440,,1,1,,43,,,,0,173625,32,48351,72453,16757,,,,311218,20419,11120,0,0,0,0,1,,,0,1,1847,5663,,,,,,,,,,,,,SERVERID,http,roundrobin,,,,,,,

bk_deadend_443,BACKEND,0,0,0,1,400,65,9667,13845,0,0,,65,0,0,0,UP,0,0,0,,0,698129,,,1,12,0,,0,,1,0,,3,,,,0,0,0,0,65,0,,,,65,0,0,0,0,0,0,-1,,,0,0,0,0,,,,,,,,,,,,,,http,roundrobin,,,,,,,

 

etc..

 

We’ve already implemented drawing of graphs using a custom frontend php / rrdtool and it was pretty straightforward, the only bit is working out what the stats belong to and tying the front and back end stuff together if necessary, but would be great to have this in observium too, and maybe to get alerts when certain stats are too high etc..

 

 

Thanks!

Andy

 

From: observium [mailto:observium-bounces@observium.org] On Behalf Of Markus Klock
Sent: 20 February 2018 17:56
To: Observium Network Observation System
Subject: Re: [Observium] HAProxy stats

 

Should be pretty easy to implement atleast.

Could you provide example output from HAProxyctl and point out what values you are interested to graph?

/Markus

 

 

 

Den 20 feb. 2018 18:38 skrev "Franks Andy (IT Technical Architecture Manager)" <Andy.Franks@sath.nhs.uk>:

Hi all,

  Feel free to tell me to get stuffed, but I couldn’t find an answer anywhere in google or on the mailing list so thought it worth asking..

As a (very) keen user of HAProxy, is it on the roadmap to be an application Observium can monitor? The stats are quite easily gained through something like HAProxyctl or socat interface.

Keepalived would be nice too, and has snmp functionality.

 

J

 

Thanks

Andy


_______________________________________________
observium mailing list
observium@observium.org
http://postman.memetic.org/cgi-bin/mailman/listinfo/observium