Node:syslog; vsyslog, Next:closelog, Previous:openlog, Up:Submitting Syslog Messages
The symbols referred to in this section are declared in the file
syslog.h
.
void syslog (int facility_priority, char *format, ...) | Function |
syslog submits a message to the Syslog facility. It does this by
writing to the Unix domain socket /dev/log .
syslog submits the message with the facility and priority indicated
by facility_priority. The macro LOG_MAKEPRI generates a
facility/priority from a facility and a priority, as in the following
example:
LOG_MAKEPRI(LOG_USER, LOG_WARNING)The possible values for the facility code are (macros):
syslog recognizes one other facility code: that of
the kernel. But you can't specify that facility code with these
functions. If you try, it looks the same to syslog as if you are
requesting the default facility. But you wouldn't want to anyway,
because any program that uses the GNU C library is not the kernel.
You can use just a priority code as facility_priority. In that
case, syslog assumes the default facility established when the
Syslog connection was opened. See Syslog Example.
The possible values for the priority code are (macros):
openlog ), syslog implicitly opens the
connection the same as openlog would, with the following defaults
for information that would otherwise be included in an openlog
call: The default identification string is the program name. The
default default facility is LOG_USER . The default for all the
connection options in options is as if those bits were off.
syslog leaves the Syslog connection open.
If the dev/log socket is not open and connected, syslog
opens and connects it, the same as openlog with the
LOG_NDELAY option would.
syslog leaves /dev/log open and connected unless its attempt
to send the message failed, in which case syslog closes it (with the
hope that a future implicit open will restore the Syslog connection to a
usable state).
Example:
#include <syslog.h> syslog (LOG_MAKEPRI(LOG_LOCAL1, LOG_ERROR), "Unable to make network connection to %s. Error=%m", host); |
void vsyslog (int facility_priority, char *format, va_list arglist) | Function |
This is functionally identical to syslog , with the BSD style variable
length argument.
|