{ "members":{ "root":{ "name": "Admin", "comment": "The Linspector Admin", "tasks":[{ "class": "mail", "type": "warning", "args":{ "rcpt": "admin@example.org" }}, { "class": "sms", "type": "critical", "args":{ "rcpt": "+491120000000000" }}, { "class": "jabber", "type": "critical", "args":{ "rcpt": "admin@example.org" }}] }, "hanez":{ "name": "Hanez", "comment": "Just a nerd doing admin stuff.", "parent": "darth", "tasks":[{ "class": "mail", "type": "warning", "args":{ "rcpt": "you@example.org" }}, { "class": "sms", "type": "critical", "args":{ "rcpt": "+491100000000000" }}] }, "darth":{ "name": "Darth Vader", "comment": "The father", "tasks":{ "class": "mail", "type": "warning", "args":{ "rcpt": "darth.vader@example.org" }} } }, "periods":{ "short":{ "seconds": 5, "comment": "Interval job; every 10 seconds" }, "middle":{ "seconds": 60, "comment": "Interval job; every 60 seconds" }, "long":{ "minutes": 2, "comment": "Interval job; every 2 minutes" }, "cron":{ "minute" : "0", "hour": "2", "comment": "Cron job; at 2 o'clock" }, "christmas2013":{ "date": "2013-12-24 20:00:00", "comment": "Date Job; just one day at 8PM" } }, "hostgroups":{ "group1":{ "members":[ "hanez" ], "hosts":[ "a.example.org", "b.example.org" ], "parents":[ "network" ], "processors":[ { "class": "mongodb", "args":{ "host": "mongodb.example.org", "user": "mongo", "password": "secret", "database": "default" } }, { "class": "syslog", "args":{ "host": "syslog.example.org", "user": "syslog", "password": "secret" } }, { "class": "mariadb", "args":{ "host": "mariadb.example.org", "port": "3306", "user": "maria", "password": "secret", "database": "linspector" } } ], "services":[ { "class": "ping", "fails":{ "warning": "100ms", "critical": "150ms" }, "periods":[ "short" ], "threshold": 10, "parser":{ "class": "shell", "args":{ "line": 2, "col": 5 }} }, { "class": "tcpconnect", "args":{ "port": 80 }, "periods":[ "middle" ], "threshold": 2 }, { "class": "tcpconnect", "args":{ "port": 25 }, "periods":[ "long" ], "threshold": 2 }, { "class": "tcpconnect", "args":{ "port": 110 }, "periods":[ "long" ], "threshold": 2 }, { "class": "http", "args":{ "port": 80, "path": "/status.cgi", "method": "get", "params":{ "action": "go", "value": 1 }, "protocol": "https" }, "periods":[ "long" ], "threshold": 2, "parser":{ "class": "grep", "args":{ "string": "

I am up!

" }}, "comment": "Just a string grep" } ] }, "group2":{ "members":[ "hanez" ], "hosts":["x.example.org", "y.example.org" ], "services":[ { "class": "ping", "fails":{ "warning": "100ms", "critical": "150ms" }, "periods":[ "short" ], "threshold": 10, "parser":{ "class": "shell", "args":{ "line": 2, "col": 5 }} }, { "class": "tcpconnect", "args":{ "port": 2342 }, "periods":[ "long" ], "threshold": 2 } ] }, "group3":{ "members":[ "hanez" ], "hosts":[ "master.example.org" ], "services":[ { "class": "ssh", "args":{ "port": 23, "command": "df", "username": "hanez", "password": "secret", "key": "~/.ssh/id_rsa" }, "fails":{ "warning": "80%", "critical": "90%" }, "periods":[ "long" ], "threshold": 10, "parser":[{ "class": "grep", "args":{ "line": "/dev/sda1", "col": 5 }}, [{ "class": "grep", "args":{ "line": "/dev/sda2", "col": 5 }}, { "class": "grep", "args":{ "line": "/dev/sda2", "col": 5 }}]] }, { "class": "shell", "comment": "Getting the Linux system load using the shell service and the snmpget command", "args":{ "command": "snmpget -v2c -c linspector @host .1.3.6.1.4.1.2021.10.1.3.1" }, "fails":{ "warning": 4.00, "critical": 8.00 }, "periods":[ "middle" ], "threshold": 10, "parser":{ "class": "shell", "args":{ "line": 1, "col": 4 }} } ] }, "network":{ "members":[ "hanez" ], "hosts":[ "router.example.org" ], "processors":[ { "class": "mongodb", "args":{ "host": "mongodb.example.org", "user": "mongo", "password": "secret", "database": "default" } } ], "services":[ { "class": "shell", "comment": "ping using the shell service and no builtin", "args":{ "command": "ping -c1 @host" }, "fails":{ "warning": "100ms", "critical": "150ms", "notes": "HeyHo! A ping failed, wake up! (@response)" }, "periods":[ "short" ], "threshold": 10, "parser":{ "class": "shell", "args":{ "line": 2, "col": 8 }} }, { "class": "snmpget", "comment": "The Linux system load", "args":{ "port": 161, "community": "linspector", "oid": ".1.3.6.1.4.1.2021.10.1.3.1" }, "fails":{ "warning": 4.00, "critical": 8.00 }, "periods":[ "middle" ], "threshold": 10 }, { "class": "snmpget", "comment": "The Linux system uptime just processed... not more.", "args":{ "port": 161, "community": "linspector", "oid": ".1.3.6.1.2.1.1.3.0" }, "periods":[ "middle" ], "threshold": 10 } ] } }, "layouts":{ "production":{ "hostgroups":[ "group1" ], "enabled": true }, "critical":{ "hostgroups":[ "group3" ], "enabled": false }, "all":{ "hostgroups":[ "group1", "group2", "group3", "network" ], "enabled": false } }, "core":{ "instance_name": "Master Monitoring (monitor.example.org)", "max_logfile_size": 1024000, "max_logfile_count": 4, "max_worker_threads": 8, "members":[ "root" ], "tasks":{ "jabber":{ "host": "example.org", "port": 5222, "username": "USERNAME", "password": "PASSWORD" }, "mail":{ "host": "localhost", "port": 25, "from": "linspector@example.org" }, "sms":{ } } } }