Write a message to the syslogd system log
Synopsis:
#include <syslog.h>
void syslog( int priority,
             const char * message, 
             ...)
Arguments:
- priority
- The priority of the message; see
  Message levels,
  below.
- message
- The message that you want to write.
  This message is identical to a
  printf()-format
  string, except that %m is replaced by the current
  error message (as denoted by the global variable
  errno).
  A trailing newline is added if none is present.
The formatting characters that you use in the message determine any additional arguments.
Library:
libc
Use the -l c option to
qcc
to link against this library.
This library is usually included automatically.
Description:
The syslog() function writes message
to the system message logger. The message is then written to
the system console, log files, and logged-in users, or
forwarded to other machines as appropriate.
(See the 
syslogd 
command.)
The
vsyslog()
function is an alternate form in which the arguments 
have already been captured using the variable-length argument 
facilities of <stdarg.h>.
Message levels
The message is tagged with priority. 
Priorities are encoded as a facility and a level. 
The facility describes the part of the system generating the message:
- LOG_KERN
- Kernel messages.
  
- LOG_USER
- Random user-level messages.
  
- LOG_MAIL
- Mail system.
  
- LOG_DAEMON
- System daemons.
  
- LOG_AUTH
- Security/authorization messages.
  
- LOG_SYSLOG
- Messages generated internally by syslogd.
  
- LOG_LPR
- Line printer subsystem.
  
- LOG_NEWS
- Network news subsystem.
  
- LOG_UUCP
- UUCP subsystem.
  
- LOG_CRON
- Clock daemon.
  
- LOG_AUTHPRIV
- Security/authorization messages (private).
  
- LOG_FTP
- ftp daemon.
  
- LOG_LOCAL0 through LOG_LOCAL7
- Reserved for local use.
  
The level is selected from the following list (ordered from high to low):
- LOG_EMERG
- A panic condition. 
  This is normally broadcast to all users.
  
- LOG_ALERT
- A condition that should be corrected immediately, such as a corrupted system database.
  
- LOG_CRIT
- Critical conditions (for example, hard device errors).
  
- LOG_ERR
- General errors.
  
- LOG_WARNING
- Warning messages.
  
- LOG_NOTICE
- Conditions that aren't error conditions, but should possibly be specially handled.
  
- LOG_INFO
- Informational messages.
  
- LOG_DEBUG
- Messages that contain information normally of use only when debugging a program.
  
Examples:
syslog(LOG_ALERT, "who: internal error 23");
openlog("ftpd", LOG_PID, LOG_DAEMON);
setlogmask(LOG_UPTO(LOG_ERR));
syslog(LOG_INFO, "Connection from host %d", CallingHost);
syslog(LOG_INFO|LOG_LOCAL2, "foobar error: %m");
Classification:
POSIX 1003.1
| Safety: |  | 
|---|
| Cancellation point | Yes | 
| Interrupt handler | No | 
| Signal handler | No | 
| Thread | Yes |