]> git.pld-linux.org Git - packages/cacti-template-varnish.git/blame - get_varnish_stats.py
- from http://forums.cacti.net/viewtopic.php?t=31260
[packages/cacti-template-varnish.git] / get_varnish_stats.py
CommitLineData
69382e8f
ER
1#!/usr/bin/python
2import telnetlib
3import re
4import sys
5import getopt
6
7opts, args = getopt.getopt(sys.argv[1:], "h:p:", ["host=", "port="])
8host = '127.0.0.1'
9port = 9001
10for o, v in opts:
11 if o in ("-h", "--host"):
12 host = str(v)
13 if o in ("-p", "--port"):
14 port = int(v)
15
16telnet = telnetlib.Telnet()
17telnet.open(host, port)
18telnet.write('stats\r\n')
19out=telnet.read_until("N duplicate purges removed", 10)
20telnet.write('quit\r\n')
21telnet.close()
22
23req = re.search("\d+ Client requests received", out)
24req = req.group(0).split()[0]
25
26hit = re.search("\d+ Cache hits", out)
27hit = float(hit.group(0).split()[0])
28
29miss = re.search("\d+ Cache misses", out)
30miss = float(miss.group(0).split()[0])
31
32print 'varnish_requests:'+str(req)+' varnish_hitrate:'+str(round(hit / (hit + miss) * 100, 1))
33
This page took 0.08725 seconds and 4 git commands to generate.