Syslog

closelog, openlog, syslog – send messages to the system logger

SYNOPSIS

#include

void openlog( char *ident, int option, int facility)

void syslog( int priority, char *format, …)

void closelog( void )

DESCRIPTION

closelog() closes the descriptor being used to write to
the system logger. The use of closelog() is optional.

openlog() opens a connection to the system logger for a
program. The string pointed to by ident is added to each
message, and is typically set to the program name. Values
for option and facility are given in the next section.
The use of openlog() is optional; It will automatically be
called by syslog() if necessary, in which case ident will
default to NULL.

syslog() generates a log message, which will be dis-
tributed by syslogd(8). priority is a combination of the
facility and the level, values for which are given in the
next section. The remaining arguments are a format, as in
printf(3) and any arguments required by the format, except
that the two character %m will be replaced by the error
message string (strerror) corresponding to the present
value of errno.

PARAMETERS

This section lists the parameters used to set the values
of option, facility, and priority.

option
The option argument to openlog() is an OR of any of these:

LOG_CONS
write directly to system console if there is an
error while sending to system logger

LOG_NDELAY
open the connection immediately (normally, the con-
nection is opened when the first message is logged)

LOG_PERROR
print to stderr as well

LOG_PID
include PID with each message

facility
The facility argument is used to specify what type of pro-
gram is logging the message. This lets the configuration
file specify that messages from different facilities will
be handled differently.

LOG_AUTH
security/authorization messages (DEPRECATED Use
LOG_AUTHPRIV instead)

LOG_AUTHPRIV
security/authorization messages (private)

LOG_CRON
clock daemon (cron and at)

LOG_DAEMON
other system daemons

LOG_KERN
kernel messages

LOG_LOCAL0 through LOG_LOCAL7
reserved for local use

LOG_LPR
line printer subsystem

LOG_MAIL
mail subsystem

LOG_NEWS
USENET news subsystem

LOG_SYSLOG
messages generated internally by syslogd

LOG_USER(default)
generic user-level messages

LOG_UUCP
UUCP subsystem

level
This determines the importance of the message. The levels
are, in order of decreasing importance:

LOG_EMERG
system is unusable

LOG_ALERT
action must be taken immediately

LOG_CRIT
critical conditions

LOG_ERR
error conditions

LOG_WARNING
warning conditions

LOG_NOTICE
normal, but significant, condition

LOG_INFO
informational message

LOG_DEBUG
debug-level message

HISTORY

A syslog function call appeared in BSD 4.2.

SEE ALSO

logger(1), syslog(5), syslogd(8)

EOF