I use Argus for monitoring and alerting: http://argus.tcp4me.com Initially I was almost going to write a full essay about how much and why I like it :) but a pic worths a thousands words. Just check out the demo, and you'll get a pretty good ideea about what it can do. The configuration files are also very nice and clean, you can break the configuration into several files, group the options as you see fit, etc. Here's a glimpse of how the config files look like, it can be as simple as: Host "alex" { hostname: localhost Service TCP/SSH Service TCP/SMTP Service TCP/POP Service TCP/IMAP Service TCP/HTTP Service UDP/Domain/slack.i Service UDP/NFS } or as complete as you need: Host "alex" { note: This is the main monitoring server, located in Oradea, Romania. details: The system is a PIII @600 MHz box with 256RAM, 2xSCSI disks. graph: yes hostname: localhost Service TCP/SSH Group "Email" { Service TCP/SMTP { label: SMTP } Service TCP/POP { label: POP3 } Service TCP/IMAP { label: IMAP } } Service TCP/HTTP # UDP/DNS sends a 'status-query', UDP/DNSQ sends an 'IN ANY' query. # Some DNS servers (notably djbdns) do not handle 'status' queries. # UDP/DNSQ is available only in versions 3.1 and later. Service UDP/DNSQ { hostname: 192.168.0.1 } Service DNSQ/A/slack.i { hostname: 192.168.0.1 expect: 192.168.0.1 } Service UDP/NFS Service Prog { severity: major label: Storage command: /usr/bin/nc localhost filestat expect: OK } Service Prog { label: MySQL command: /usr/bin/nc localhost mysql-ping expect: 2500 } Service Ping { uname: alive } } Good luck, Alex