There are a couple of techniques you could use for monitoring cronjobs.
To receive alerts of cronjob failures:
- Use cron's standard MAILTO= function. If a cronjob produces output on STDERR, it will be mailed to the address you choose.
- To track and deal with cron mails, you can direct them into a ticket system.
The system you propose to log information into a "network aware" place sounds like syslog. syslog provides a simple method for creating logs, it normally manages files such as /var/log/messages. You can make basic customisations, such as choosing which files receive the log messages.
Syslog can be started in a network aware mode. For example, you can configure it so a slave can log to a master:
[root@slave ~]# echo "hello world from slave" | logger -p local1.info
[root@master ~]# tail /var/log/myapp
Jun 29 13:07:01 192.168.1.2 logger: hello world from slave
For a Red Hat based distribution, an example configuration is as follows:
[root@slave ~]# cat /etc/syslog.conf | grep local1
local1.* @192.168.1.3
[root@master ~]# cat /etc/sysconfig/syslog | grep SYSLOGD_OPTIONS
SYSLOGD_OPTIONS="-m 0 -r"
[root@master ~]# cat /etc/syslog.conf | grep local
local1.* /var/log/myapp
(The first config line redirects local1.* log notices to @192.168.1.3 ("master"). The second SYSLOGD_OPIONS line's -r flag turns on network support. Lastly, the third config line directs local1.* messages received on "master" into a file).
The syslog approach is better for only logging errors/information. Log files have less visibility than e-mail, so you probably won't look at the logs unless something has gone wrong.
If you choose to go the syslog style route, also consider syslog-ng: http://freshmeat.net/projects/syslog-ng/.
Of course, you can get the best of both techniques by using both. For example, syslog'ing both failures and successes, and just mailing for failures.