Content-type: text/html Man page of syslog

syslog

Section: C Library Functions (3)
Index Return to Main Contents
 

NAME

closelog, openlog, setlogmask, syslog, closelog_r, openlog_r, setlogmask_r, syslog_r - Control system log  

LIBRARY

Standard C Library (libc.so, libc.a)  

SYNOPSIS

#include <syslog.h>

void closelog(void);

void openlog(
        const char *id,
        int log_option,
        int facility);

int setlogmask(
        int mask_priority);

void syslog(
        int priority,
        const char *format,...);

The following function declarations do not conform to current standards and are supported only for backward compatibility.

int openlog(
        const char *id,
        int log_option,
        int facility);

int syslog(
        int priority,
        const char *format,...);

void closelog_r(
        struct syslog_data *syslog_data);

int openlog_r(
        const char *id,
        int log_option,
        int facility,
        struct syslog_data *syslog_data);

int setlogmask_r(
        int mask_priority,
        struct syslog_data *syslog_data);

int syslog_r(
        int priority,
        struct syslog_data *syslog_data,
        const char *format,...);  

STANDARDS

Interfaces documented on this reference page conform to industry standards as follows:

closelog(), openlog(), setlogmask(), syslog():  XPG4-UNIX

Refer to the standards(5) reference page for more information about industry standards and associated tags.  

PARAMETERS

Specifies a string that is attached to the beginning of every message. Specifies logging options. Values of the log_option parameter include: Logs the process ID with each message. This option is useful for identifying daemons. Sends messages to the console if unable to send them to syslogd. This option is useful in daemon processes that have no controlling terminal. Opens the connection to syslogd immediately, instead of when the first message is logged. This option is useful for programs that need to manage the order in which file descriptors are allocated.

[Digital]  This option is required for programs using the chroot system call. Delays opening the connection until syslog() is called. Logs messages to the console without waiting for child processes that are forked. Use this option for processes that enable notification of termination of child processes through SIGCHLD; otherwise, the syslog() function may block, waiting for a child process whose exit status has already been collected. Specifies the facility that generated the message, which is one of the following: [Digital]  Messages generated by the kernel. These cannot be generated by any user processes. Messages generated by user processes. This is the default facility when none is specified. [Digital]  Messages generated by the mail system. [Digital]  Messages generated by system daemons. [Digital]  Messages generated by the authorization system: login, su, and so on. [Digital]  Messages generated by the line printer spooling system. [Digital]  Messages generated by remote file systems. Reserved for local use.
This parameter encodes a default facility from the previous list to be assigned to messages that do not have an explicit facility encoded. Messages are tagged with codes indicating the type of priority for each. The priority parameter is encoded as a facility (as previously listed), which describes the part of the system generating the message, and as a level, which indicates the severity of the message. The level of severity is selected from the following list: A panic condition was reported to all users. Specifies a condition to be corrected immediately; for example, a corrupted database. Specifies a critical conditions; for example, hard device errors. Specifies errors. Specifies warning messages. Specifies that it is not an error condition, but a condition requiring special handling. Specifies general information messages. Specifies messages containing information useful in debugging a program. Similar to the printf fmt string, with the difference that %m is replaced by the current error message obtained from errno. A trailing newline can be added to the message if needed. The value parameters are the same as the value parameters of the printf() function. Callers of syslog() must ensure that the message is not longer than LINE_MAX bytes. Results are unspecified if syslog() is called with a message larger than LINE_MAX bytes. Specifies a bit mask used to set the new log priority mask and return the previous mask. The LOG_MASK and LOG_UPTO macros in the sys/syslog.h file are used to create the priority mask. [Digital]  The closelog_r(), openlog_r(), setlogmask_r(), and syslog_r() functions use this opaque structure.
 

DESCRIPTION

The syslog() function writes messages to the system log maintained by the syslogd daemon.

The syslogd daemon reads messages and writes them to the system console or to a log file, or forwards them to the syslogd daemon on the appropriate host.

If the syslog() function cannot pass the message to syslogd, it writes the message on /dev/console, provided the LOG_CONS option is set.

If special processing is required, the openlog() function can be used to initialize the log file.

[Digital]  If a program is using the chroot system call, the syslog routine will not work correctly unless the program calls the openlog or openlog_r routine prior to making the call to chroot .

The closelog() function closes the log file.

The setlogmask() function uses the bit mask in the mask_priority parameter to set the new log priority mask and returns the previous mask. Logging is enabled for the levels indicated by the bits in the mask that are set and is disabled where the bits are not set. The default mask allows all priorities to be logged. If the syslog() function is called with a priority mask that does not allow logging of that level of message, then the function returns without logging the message.

The log_option, facility, and priority macros are defined in the <sys/syslog_pri.h> file.  

NOTES

[Digital]  The closelog_r(), openlog_r(), syslog_r(), and setlogmask_r() functions are the reentrant versions of the closelog(), openlog(), syslog(), and setlogmask() functions. They are supported in order to maintain backward compatibility with versions of the operating system prior to Tru64 UNIX Version 4.0. They use the syslog_data structure to maintain syslog access state. The data object syslog_data should be initialized to SYSLOG_DATA_INIT.  

RETURN VALUES

[XPG4-UNIX] The setlogmask() function returns the previous log priority mask. The closelog(), openlog(), and syslog() functions return no value.

[Digital]  The backward-compatible version of the syslog() function returns a value of -1 if either the priority mask excludes this message from being logged, or if an error occurs and it is impossible to send the message to the syslogd daemon or to the system console.

[Digital]  Upon successful completion, the backward-compatible version of the openlog() function returns a value of 0 (zero). Otherwise, a value of -1 is returned and errno is set to indicate the error.  

RELATED INFORMATION

Functions: profil(2)

Standards: standards(5) delim off


 

Index

NAME
LIBRARY
SYNOPSIS
STANDARDS
PARAMETERS
DESCRIPTION
NOTES
RETURN VALUES
RELATED INFORMATION

This document was created by man2html, using the manual pages.
Time: 02:40:56 GMT, October 02, 2010