The file /etc/syslog.conf contains information used by the system log daemon, syslogd(1M), to forward a system message to appropriate log files and/or users. syslogd preprocesses this file through m4(1) to obtain the correct information for certain log files, defining LOGHOST if the address of "loghost" is the same as one of the addresses of the host that is running syslogd.
facility.level [ ; facility.level ]
Messages generated by user processes. This is the default priority for messages from programs or facilities not listed in this file.
Messages generated by the kernel.
The mail system.
System daemons, such as in.ftpd(1M)
The line printer spooling system: lpr(1B), lpc(1B), among others.
Reserved for the USENET network news system.
Reserved for the UUCP system; it does not currently use the syslog mechanism.
The cron/at facility; crontab(1), at(1), cron(1M), among others.
Reserved for local use.
For timestamp messages produced internally by syslogd.
An asterisk indicates all facilities except for the mark facility.
Recognized values for level are (in descending order of severity):
For panic conditions that would normally be broadcast to all users.
For conditions that should be corrected immediately, such as a corrupted system database.
For warnings about critical conditions, such as hard device errors.
For other errors.
For warning messages.
For conditions that are not error conditions, but may require special handling. A configuration entry with a level value of notice must appear on a separate line.
For messages that are normally used only when debugging a program.
Do not send messages from the indicated facility to the selected file. For example, a selector of
will send all messages except mail messages to the selected file.
The action field indicates where to forward the message. Values for this field can have one of four forms:
A filename, beginning with a leading slash, which indicates that messages specified by the selector are to be written to the specified file. The file will be opened in append mode.
The name of a remote host, prefixed with an @, as with: @server, which indicates that messages specified by the selector are to be forwarded to the syslogd on the named host. The hostname "loghost" is the hostname given to the machine that will log syslogd messages. Every machine is "loghost" by default. See /etc/hosts. It is also possible to specify one machine on a network to be "loghost" by making the appropriate host table entries. If the local machine is designated to be "loghost", then syslogd messages are written to the appropriate files. Otherwise, they are sent to the machine "loghost" on the network.
A comma-separated list of usernames, which indicates that messages specified by the selector are to be written to the named users if they are logged in.
An asterisk, which indicates that messages specified by the selector are to be written to all logged-in users.
Blank lines are ignored. Lines for which the first nonwhite character is a '#' are treated as comments.
With the following configuration file:
syslogd(1M) will log all mail system messages except debug messages and all notice (or higher) messages into a file named /var/log/notice. It logs all critical messages into /var/log/critical, and all kernel messages and 20-minute marks onto the system console.
Kernel messages of err (error) severity or higher are forwarded to the machine named server. Emergency messages are forwarded to all users. The users root and operator are informed of any alert messages. All messages from the authorization system of warning level or higher are logged in the file /var/log/auth.
log of all mail system messages (except debug messages) and all messages of notice level or higher.
log of all critical messages
log of all messages from the authorization system of warning level or higher