Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ syslog(3b) — 4D1 2.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

syslogd(1M)



     SYSLOG(3B)                                             SYSLOG(3B)



     NAME
          syslog, openlog, closelog, setlogmask - control system log

     SYNOPSIS
          #include <syslog.h>

          openlog(ident, logopt, facility)
          char *ident;

          syslog(priority, message, parameters ... )
          char *message;

          closelog()

          setlogmask(maskpri)

     DESCRIPTION
          Syslog arranges to write message onto the system log
          maintained by syslogd(1M).  The message is tagged with
          priority.  The message looks like a printf(3) string except
          that %m is replaced by the current error message (collected
          from errno).  A trailing newline is added if needed.  This
          message will be read by syslogd(1M) and written to the
          system console, log files, or forwarded to syslogd on
          another host as appropriate.

          Priorities are encoded as a facility and a level.  The
          facility describes the part of the system generating the
          message.  The level is selected from an ordered list:

          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, e.g., hard device errors.

          LOG_ERR       Errors.

          LOG_WARNING   Warning messages.

          LOG_NOTICE    Conditions that are not error conditions, but
                        should possibly be handled specially.

          LOG_INFO      Informational messages.

          LOG_DEBUG     Messages that contain information normally of
                        use only when debugging a program.

          If syslog cannot pass the message to syslogd, it will



     Page 1                                        (last mod. 8/20/87)





     SYSLOG(3B)                                             SYSLOG(3B)



          attempt to write the message on /dev/console if the LOG_CONS
          option is set (see below).

          If special processing is needed, openlog can be called to
          initialize the log file.  The parameter ident is a string
          that is prepended to every message.  Logopt is a bit field
          indicating logging options.


          Current values for logopt are:

          LOG_PID       log the process id with each message:  useful
                        for identifying instantiations of daemons.

          LOG_CONS      Force writing messages to the console if
                        unable to send it to syslogd. This option is
                        safe to use in daemon processes that have no
                        controlling terminal since syslog will fork
                        before opening the console.

          LOG_DELAY     Open the connection to syslogd later.
                        Normally the open is done before the first
                        message is logged.  Useful for programs that
                        need to manage the order in which file
                        descriptors are allocated.

          LOG_NOWAIT    Don't wait for children forked to log messages
                        on the console.  This option should be used by
                        processes that enable notification of child
                        termination via SIGCHLD, as syslog may
                        otherwise block waiting for a child whose exit
                        status has already been collected.

          The facility parameter encodes a default facility to be
          assigned to all messages that do not have an explicit
          facility encoded:

          LOG_KERN      Messages generated by the kernel.  These
                        cannot be generated by any user processes.

          LOG_USER      Messages generated by random user processes.
                        This is the default facility identifier if
                        none is specified.

          LOG_MAIL      The mail system.

          LOG_DAEMON    System daemons, such as ftpd(1M), routed(1M),
                        etc.

          LOG_AUTH      The authorization system:  login(1), su(1),
                        getty(1M), etc.




     Page 2                                        (last mod. 8/20/87)





     SYSLOG(3B)                                             SYSLOG(3B)



          LOG_LPR       The line printer spooling system:  lpr(1),
                        lpd(1M), etc.

          LOG_LOCAL0    Reserved for local use.  Similarly for
                        LOG_LOCAL1 through LOG_LOCAL7.

          Closelog can be used to close the log file.

          Setlogmask sets the log priority mask to maskpri and returns
          the previous mask.  Calls to syslog with a priority not set
          in maskpri are rejected.  The mask for an individual
          priority pri is calculated by the macro LOG_MASK(pri); the
          mask for all priorities up to and including toppri is given
          by the macro LOG_UPTO(toppri).  The default allows all
          priorities to be logged.


     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");

     SEE ALSO
          syslogd(1M)

     ORIGIN
          4.3 BSD
























     Page 3                                        (last mod. 8/20/87)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026