1 #!/usr/bin/python
3 import nagixsc
4 import optparse
6 parser = optparse.OptionParser()
8 parser.add_option('-o', '', dest='outfile', help='(Path and) file name of status file, default STDOUT')
9 parser.add_option('-v', '', action='count', dest='verb', help='Verbose output')
11 parser.set_defaults(outfile='-')
12 parser.set_defaults(verb=0)
14 (options, args) = parser.parse_args()
16 checks = [{'host_name': 'host1',
17 'output': 'Nag(ix)SC: Check result is 24535725(>14400) seconds old - DISK CRITICAL - free space: /home 775 MB (1% inode=91%);| /home=67584MB;61523;64941;0;68359',
18 'returncode': '2',
19 'service_description': 'Disk_Home',
20 'timestamp': 1234443420},
21 {'host_name': 'host1',
22 'output': 'Nag(ix)SC: Check result is 24535725(>14400) seconds old - OK - load average: 0.00, 0.00, 0.00|load1=0.000;5.000;10.000;0; load5=0.000;5.000;10.000;0; load15=0.000;5.000;10.000;0;',
23 'returncode': '0',
24 'service_description': 'Load',
25 'timestamp': 1234443420},
26 {'host_name': 'host2',
27 'output': 'Nag(ix)SC: Check result is 24535735(>14400) seconds old - PROCS OK: 163 processes',
28 'returncode': '0',
29 'service_description': 'Procs_Total',
30 'timestamp': 1234443410},
31 {'host_name': 'host2',
32 'output': 'Nag(ix)SC: Check result is 24535715(>14400) seconds old - SWAP OK - 79% free (1492 MB out of 1906 MB) |swap=1492MB;953;476;0;1906',
33 'returncode': '0',
34 'service_description': 'Swap', },
35 {'host_name': 'host1',
36 'output': 'Nag(ix)SC: Check result is 24535725(>14400) seconds old - DISK OK - free space: / 2167 MB (22% inode=97%);| /=7353MB;8568;9044;0;9520',
37 'returncode': '0',
38 'service_description': 'Disk_Root',
39 'timestamp': 1234443420},
40 {'host_name': 'host2',
41 'output': 'Nag(ix)SC: Check result is 24535735(>14400) seconds old - USERS WARNING - 11 users currently logged in |users=11;10;15;0\n3 root sessions\n8 non-root sessions',
42 'returncode': '1',
43 'service_description': 'Users',
44 'timestamp': 1234443410}]
46 xmldoc = nagixsc.xml_from_dict(checks)
47 xmldoc.saveFile(options.outfile)