The syslog.cfg file is the configuration file for the syslogd program. It consists of lines with two fields: the selector field which specifies the types of messages and priorities to which the line applies, and an action field which specifies the action to be taken if a message syslogd receives matches the selection criteria. The selector field is separated from the action field by one or more tab characters.
The Selectors function are encoded as a facility, a period ("."), and a level, with no intervening white-space. Both the facility and the level are case insensitive.
The facility describes the part of the system generating the message, and is one of the following keywords: auth, authpriv, cron, daemon, kern, lpr, mail, news, syslog, user, uucp and local0 through local7. These keywords (with the exception of mark) correspond to the similar "LOG_" values specified to the openlog and syslog library routines.
The level describes the severity of the message, and is a keyword from the following ordered list (higher to lower): emerg, alert, crit, err, warning, notice and debug. These keywords correspond to the similar (LOG_) values specified to the syslog library routine.
See syslog for a further descriptions of both the facility and level keywords and their significance.
If a received message matches the specified facility and is of the specified level (or a higher level), the action specified in the action field will be taken.
Multiple selectors may be specified for a single action by separating them with semicolon (";") characters. It is important to note, however, that each selector can modify the ones preceding it.
Multiple facilities may be specified for a single level by separating them with comma (",") characters.
An asterisk ("*") can be used to specify all facilities or all levels.
The action field of each line specifies the action to be taken when the selector field selects a message.There are four forms:
Blank lines and lines whose first non-blank character is a hash ("#") character are ignored.
EXAMPLES A configuration file might appear as follows:
# # # # Log some message levels to console *.emerg;*.crit;*.err;*.alert %console # Put FTP messages in their own logfile ftp.* /config/nodea/ftp.log # Put all messages in this file *.* /config/nodea/syslog.log # Forward all messages to another host *.* @logger.mydomain.com
The effects of multiple selectors are sometimes not intuitive. For example "mail.crit,*.err" will select "mail" facility messages at the level of "err" or higher, not at the level of "crit" or higher.