Ammonitrix is a monitoring system we're building in python to monitor services remotely ( its agentless)
At the moment we have the following sensons
-icmp check
-http load time (frontend + backend)
-http status
-http title
-POP check
-smtp check
-blacklist check
-http text content matching
-web screenshot
The project is not finished yet as we're currently working on it.
At the moment we're working on:
* broken links ?
* domain expire
* SLA Management
* SLA Monitoring
* email round trip
* dns check (dns match)
* ssh check
* rdp status
* certificate expire check
* mysql status
* MSSQL status
* ssh/telnet banner ?
* vpn/openvpn/ipsec status
* api ?
* memcache ?
* VOIP
* notific via twitter
* twitter keyword monitor ? xD
- adding new sensors
- implement a realtime frontend
- setting up the server
- mail notification mail support
- sms notification support
- raporting
- In a not so distant future:
- agent monitoring (linux internals monitoring , memory, disk, routes, interfaces, io-load )
- mysql performance stats
At the moment the results are transmited via syslog (for diagnostics)
examle of a node working (checking on service with ID 3 ):
root@valhalla:/home/tuwid/Dropbox/pamon# ./sauron.py -n 3
Node 3 Back End: 288ms Front End: 219ms Total: 507ms
Node 3 Back End: 229ms Front End: 234ms Total: 463ms
Node 3 Back End: 238ms Front End: 210ms Total: 448ms
Node 3 Back End: 237ms Front End: 229ms Total: 466ms
And these results are logged on the syslog server as:
tuwid@valhalla:~$ tail -f /var/log/syslog | grep sauron
Nov 15 17:00:42 valhalla sauron.py: Node 3 Back End: 214ms Front End: 237ms Total: 451ms 17:00:42.063517
Nov 15 17:25:52 valhalla sauron.py: Node 3 Back End: 288ms Front End: 219ms Total: 507ms 17:25:52.595306
Nov 15 17:26:07 valhalla sauron.py: Node 3 Back End: 229ms Front End: 234ms Total: 463ms 17:26:07.922704
Nov 15 17:26:23 valhalla sauron.py: Node 3 Back End: 238ms Front End: 210ms Total: 448ms 17:26:23.187763
Other sensors working:
root@valhalla:/home/tuwid/Dropbox/pamon# ./sauron.py -n 2
200
200
200
root@valhalla:/home/tuwid/Dropbox/pamon# ./sauron.py -n 6
Node 6 port OK, banner: +OK Dovecot ready. 11:22:36.363076
Node 6 port OK, banner: +OK Dovecot ready. 11:22:43.784474
Node 6 port OK, banner: +OK Dovecot ready. 11:22:51.204418
root@valhalla:/home/tuwid/Dropbox/pamon# ./sauron.py -n 5
Node 5 ['404 Not Found'] 11:23:36.954337
Node 5 ['404 Not Found'] 11:23:47.054163
Node 5 ['404 Not Found'] 11:23:57.411693
Node 5 ['404 Not Found'] 11:24:08.504208
Node 5 ['404 Not Found'] 11:24:18.596090
root@valhalla:/home/tuwid/Dropbox/pamon# ./sauron.py -n 4
Node 4 matched ['Te dhena mbi situaten e blacklisting'] 11:24:36.522339
Node 4 matched ['Te dhena mbi situaten e blacklisting'] 11:24:46.641266
Node 4 matched ['Te dhena mbi situaten e blacklisting'] 11:24:56.743526
Node 4 matched ['Te dhena mbi situaten e blacklisting'] 11:25:06.838635
Node 4 matched ['Te dhena mbi situaten e blacklisting'] 11:25:16.969715
Node 4 matched ['Te dhena mbi situaten e blacklisting'] 11:25:27.107149
On the syslog end:
tuwid@valhalla:~$ tail -f /var/log/syslog | grep sauron
Nov 15 17:28:01 valhalla sauron.py: Node 2 200 17:28:01.598997
Nov 15 17:28:28 valhalla sauron.py: Node 2 200 17:28:28.373709
Nov 15 17:28:38 valhalla sauron.py: Node 2 200 17:28:38.655486
Nov 15 17:28:48 valhalla sauron.py: Node 2 200 17:28:48.942433