One of the key roles of a System/Network Administrator is to monitor log files. This usually requires helper scripts (i.e. Perl programs) so a summary of large log files can be quickly scanned to determine if there is anything wrong with the server or network. The assignment will examine your understanding of the material covered so far in the unit.
For this assignment you will write a Perl program to process Linux log files and produce reports. The daemons klogd and syslog/syslog-ng receive log messages from the kernel on a local machine, and also can be configured to receive log messages from remote systems - the machine is then known as a "log server". These messages are then typically stored in files within the /var/log directory. Most log messages are stored in /var/log/messages. The lines in these log files will often (but not always) start with the date and time, followed by: the computer hostname from which the message was sent, the name of service which sent the log message, a unique number representing that service in square brackets, and the message in its own format. See the provided example messages file.