Hi,
not a Perl solution, but why reinvent the wheel?
Nagios is easily set up, monitors more things than you can think of, special requirements in monitoring can be taken care of by own plugins - which can of course be developed with Perl - and there is a wide variety of
CPAN modules on Nagios.
Regards,
svenXY