If you wan't a free one you can use this http://www.siteuptime.com it can be set to check it every 30 or 60 minutes free. It notifies you through email if it is down. You can pay to make it monitor it like every 2 minutes and to have it monitor multiple sites.
We use WebSitePulse.Com to show public uptime statistics, from a 3rd party provider to show potential & current customers, but for actual monitoring we use Nagios.