Sys::Syslog

Sys::Syslog(3)         Perl Programmers Reference Guide         Sys::Syslog(3)



NAME
       Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl interface to
       the UNIX syslog(3) calls

SYNOPSIS
           use Sys::Syslog;                          # all except setlogsock, or:
           use Sys::Syslog qw(:DEFAULT setlogsock);  # default set, plus setlogsock

           setlogsock $sock_type;
           openlog $ident, $logopt, $facility;
           syslog $priority, $format, @args;
           $oldmask = setlogmask $mask_priority;
           closelog;


DESCRIPTION
       Sys::Syslog is an interface to the UNIX syslog(3) program.  Call
       syslog() with a string priority and a list of printf() args just like
       syslog(3).

       Syslog provides the functions:

       openlog $ident, $logopt, $facility
            $ident is prepended to every message.  $logopt contains zero or
            more of the words pid, ndelay, cons, nowait.  $facility specifies
            the part of the system

       syslog $priority, $format, @args
            If $priority permits, logs ($format, @args) printed as by
            printf(3V), with the addition that %m is replaced with "$!" (the
            latest error message).

       setlogmask $mask_priority
            Sets log mask $mask_priority and returns the old mask.

       setlogsock $sock_type (added in 5.004_02)
            Sets the socket type to be used for the next call to openlog() or
            syslog() and returns TRUE on success, undef on failure.

            A value of 'unix' will connect to the UNIX domain socket returned
            by _PATH_LOG in syslog.ph.  A value of 'inet' will connect to an
            INET socket returned by getservbyname().  Any other value croaks.

            The default is for the INET socket to be used.

       closelog
            Closes the log file.

       Note that openlog now takes three arguments, just like openlog(3).

EXAMPLES
           openlog($program, 'cons,pid', 'user');
           syslog('info', 'this is another test');
           syslog('mail⎪warning', 'this is a better test: %d', time);
           closelog();

           syslog('debug', 'this is the last test');

           setlogsock('unix');
           openlog("$program $$", 'ndelay', 'user');
           syslog('notice', 'fooprogram: this is really done');

           setlogsock('inet');
           $! = 55;
           syslog('info', 'problem was %m'); # %m == $! in syslog(3)


DEPENDENCIES
       Sys::Syslog needs syslog.ph, which can be created with h2ph.

SEE ALSO
       the syslog(3) manpage

AUTHOR
       Tom Christiansen <tchrist@perl.com> and Larry Wall <larry@wall.org>.
       UNIX domain sockets added by Sean Robinson <robinson_s@sc.maricopa.edu>
       with support from Tim Bunce <Tim.Bunce@ig.co.uk> and the perl5-porters
       mailing list.

















3rd Berkeley Distribution    perl 5.005, patch 02               Sys::Syslog(3)