If you will be monitoring more then one system, setting up Nagios will provide what you are asking, for a single system it is probably overkill.
It isn't exclusive to Linux either, it will handle Windows servers, routers, switches, printers, etc.
There are a ton of different plugins available to interact with various systems to get detailed information out of them along with supporting purely SNMP based items.
An example is with our Dell servers, we load NSClient++ on the machines with the check_openmanage plugin so that Nagios can get details on power supplies, cpus, memory, disk controllers, drives, fans, etc.
Also see my answer about some other monitoring where I put some more information about Nagios.
Regarding the email, Nagios is event based, when something happens it sends a notification based on the rules of time of day, degree of issue, etc. As far as I know, there isn't a daily recap email, you just login to the web interface and look at the status' in real time. There may be some options or an extension available to do so though. Nagios is a heavily used monitoring suite and so there is a lot of 3rd party work done for it.
The core Nagios server is licensed under GPL as are many of the plugins released for public use. There are some commercial add-ons also available and a commercial support available from Nagios.
Nagios is typically run on a single independent machine. It could be run on a shared server but depending on what kind of outage to that server, you may not get the alerts that something happened.
There are more advanced configurations of Nagios to have local information collectors that report back to a centralized Nagios system and double monitoring so that loss of a monitoring server can be reported along with other issues during that period of time.
You can execute probes on a linux server locally using NRPE. For windows I recommend NSClient++, there is also an NRPE_NT but I've found NSClient++ more stable and they can run the same probes.
NConf is a very useful web based configuration utility for Nagios. NConf doesn't update the Nagios configuration live but rather generates a tgz of the config files to extract into the nagios directory. I tossed a simple bash script into my home directory so after I generate the configs I run it, see below.
tar -xzvf /var/www/localhost/htdocs/nconf/output/NagiosConfig.tgz -C /etc/nagios