http://www.cacti.net/
Is probably one of the best out there. You can setup monitoring for anything you can imagine...
I use it to track about 200 separate data points for everything from server load to new user registrations to time on site to MySQL load and query times to...
Of course you can use far less ;)
I also use:
http://www.nagios.org/
For notifications when something goes awry; box crashed, excessive query times, MySQL slow queries, etc... you can have it email you, IM you, text you, whatever you need.