SYSLOGD(8)

NAME

syslogd - system logging daemon.

SYNOPSIS

syslogd [ -d ] [ -f config file ] [ -m interval ] [ -p port ] [ -v ]

DESCRIPTION

System logging is provided by a version of syslogd(8) derived from the stock BSD sources. Syslogd provides the kind of logging that many modern programs use. Every logged message contains at least a time, a hostname field and a program name field, but that depends on how trusty the logging program is.

While the syslogd sources have been heavily modified a couple of notes are necessary. First of all there has been a systematic attempt to insure that syslogd follows the default, standard BSD behavior. The second important concept to note is that this version of syslogd interacts transparently with the version of syslog found in the standard libraries, so you must insure that the correct versions are installed.

The main configuration file /etc/syslog.conf or an alternative file, given with the -f option, is read at startup. Any line that begins with the hash mark (``#'') and empty lines are ignored. If an error occurs during parsing the whole line is ignored.

OPTIONS

When using debug mode, the daemon will not proceed to fork(2) to set itself in the background, but will stay in the foreground and write much debug information on the current tty. See the DEBUGGING section for more information. /etc/syslog.conf, which is the default. interval between two -- MARK -- lines is 20 minutes. This can be changed with this option. syslog/udp default service.

SIGNALS

Syslogd reacts to a set of signals. You may easily send a signal to it using the following:

    kill -SIGNAL `cat /usr/run/syslogd.pid` All open files are closed, the configuration file (default is '/etc/syslog.conf') will be reread. syslogd will die. the mark line. Normally this is done by

CONFIGURATION FILE SYNTAX DIFFERENCES

Syslogd uses a slightly different syntax for its configuration file than the original BSD sources. Originally all messages of a specific priority and above were forwarded to the log file.

For example see the following sample file

    ## Sample syslog.conf ## Emergency messages (system may be unusable)
    *.emerg *
    *.alert /dev/log ## High severity errors
    *.alert;*.crit /usr/adm/syslog ## every other message (errors/warning and informational)
    *.info;*.notice;*.warning;*.err /usr/adm/messages
    *.debug    /usr/adm/debug

SUPPORT FOR REMOTE LOGGING

Not implemented.

OUTPUT TO NAMED PIPES (FIFOs)

Not implemented.

INSTALLATION CONCERNS

There is probably one important consideration when installing this version of syslogd. This version of syslogd is dependent on proper formatting of messages by the syslog function.

Syslogd should be started by the rc sequence.

DEBUGGING

When debugging is turned on using -d option and syslogd is compiled with debug=1 then syslogd will be very verbose by writing much of what it does on stdout. Whenever the configuration file is reread and re-parsed you'll see a tabular, corresponding to the internal data structure. This tabular consists of four fields:

number
    This field contains a serial number starting by zero. This number represents the position in the internal data structure (i.e. the array). If one number is left out then there might be an error in the corresponding line in /etc/syslog.conf.

pattern
    This field is tricky and represents the internal structure exactly. Every column stands for a facility (refer to syslog(3)). As you can see, there are still some facilities left free for former use, only the left most are used. Every field in a column represents the priorities (refer to syslog(3)).

action
    This field describes the particular action that takes place whenever a message is received that matches the pattern. Refer to the syslog.conf(5) manpage for all possible actions.

arguments
    This field shows additional arguments to the actions in the last field. For file-logging this is the filename for the logfile; for user-logging this is a list of users; for remote logging this is the hostname of the machine to log to; for console-logging this is the used console; for tty-logging this is the specified tty; wall has no additional arguments.

Note that if syslogd is compiled with debug=0 only a subset is printed.

FILES

for exact information.

BUGS

If an error occurs in one line the whole rule is ignored. Syslogd doesn't change the filemode of opened logfiles at any stage of process. If a file is created it is world readable. If you want to avoid this, you have to create it and change permissions on your own.

SEE ALSO
syslog.conf(5), logger(1), syslog(3).