blob: 432ace4fd3289466458a22005502609b53d48941 (
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
#!/usr/bin/env python2
#
# present statistics from dabmux Stats Server
# to munin
import sys
import json
import socket
import os
SOCK_RECV_SIZE=10240
def connect():
"""Create a connection to the dabmux stats server
returns: the socket"""
sock = socket.socket()
sock.connect(("localhost", 12720))
version = json.loads(sock.recv(SOCK_RECV_SIZE))
if not version['service'].startswith("ODR-DabMux"):
sys.stderr.write("Wrong version\n")
sys.exit(1)
return sock
if len(sys.argv) == 1:
sock = connect()
sock.send("values\n")
values = json.loads(sock.recv(SOCK_RECV_SIZE))['values']
tmpl = "{ident:20}{maxfill:>8}{minfill:>8}{under:>8}{over:>8}"
print(tmpl.format(
ident="id",
maxfill="max",
minfill="min",
under="under",
over="over"))
for ident in values:
v = values[ident]['inputstat']
print(tmpl.format(
ident=ident,
maxfill=v['max_fill'],
minfill=v['min_fill'],
under=v['num_underruns'],
over=v['num_overruns']))
elif len(sys.argv) == 2 and sys.argv[1] == "config":
sock = connect()
sock.send("config\n")
config = json.loads(sock.recv(SOCK_RECV_SIZE))
print(config['config'])
|