Projet

Général

Profil

Paste
Télécharger au format
Statistiques
| Branche: | Révision:

root / plugins / haproxy / haproxy-bytes @ 17f78427

Historique | Voir | Annoter | Télécharger (847 octets)

1 26b6c4c3 Pasha Klets
#!/bin/sh
2
# Pasha "p01nt" Klets <pasha@klets.name>
3
4
name=`basename $0`
5
title=`echo ${name} | awk -F_ '{print $NF}'`
6
7
hp_stat() {
8
	echo "show stat" | socat unix-connect:/tmp/haproxy stdio
9
}
10
11
servers_section() {
12
	hp_stat | grep '^'${title}',' |  egrep -v '^'${title}',(FRONTEND|BACKEND)'
13
}
14
15
servers() {
16
	servers_section | awk -F, '{print $2}'
17
}
18
19
labels() {
20
	servers_section | awk -F, '{print $2"_out.label "$2" out\n"$2"_in.label "$2" in\n"$2"_out.type COUNTER\n"$2"_in.type COUNTER\n"$2"_in.negative "$2"_out" }'
21
}
22
23
values() {
24
	servers_section | awk -F, '{print $2"_out.value "$10"\n"$2"_in.value "$9}'
25
}
26
27
graph_title="${title} bytes"
28
graph_vlabel=${title}
29
30
case $1 in
31
   config)
32
		cat <<EOF
33 17f78427 Lars Kruse
graph_category loadbalancer
34 26b6c4c3 Pasha Klets
graph_args --base 1000
35
graph_title  ${graph_title}
36
graph_vlabel ${graph_vlabel}
37
38
`labels`
39
EOF
40
		exit 0
41
	;;
42
esac
43
44
values
45
46
exit 0