summaryrefslogtreecommitdiff
path: root/files/munin/mumble_users
blob: 71ea9e2f272e6732845fbe3b95195a0afa418b16 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#!/usr/bin/python
#
# Munin Plugin for Murmur/ICE
# written by T. Fernandez
# fixes by Andrew Williams
# 07/10/2010
#
##########################################################

slicefile = "/usr/share/slice/Murmur.ice"
prxstr = "Meta:tcp -h 127.0.0.1 -p 6502"

import os
import sys

import Ice
if not os.path.exists(slicefile):
        print slicefile+" not found!"
        quit(1)
Ice.loadSlice('', ['-I' + Ice.getSliceDir(), slicefile])

import Murmur
ice = Ice.initialize()
prx = ice.stringToProxy(prxstr)
murmur = Murmur.MetaPrx.checkedCast(prx)

if (sys.argv.__len__() == 2) and (sys.argv[1] == "config"):
        print "graph_title Mumble users"
        print "graph_vlabel users"
        print "graph_args --lower-limit 0"
        for server in murmur.getAllServers():
                id = str(server.id())
                print "murmur"+id+".label Server "+id
else:
        for server in murmur.getAllServers():
                id = str(server.id())
                if server.isRunning():
                    users = server.getUsers()
                else:
                    users = []
                print "murmur"+id+".value "+str(users.__len__())
quit(0)