Sys::Syslog(3)
NNAAMMEE
Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl
interface to the UNIX syslog(3) calls
SSYYNNOOPPSSIISS
use Sys::Syslog;
openlog $ident, $logopt, $facility;
syslog $priority, $format, @args;
$oldmask = setlogmask $mask_priority;
closelog;
DDEESSCCRRIIPPTTIIOONN
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 one 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_03) Sets the
socket type to be used for the next call to openlog()
or syslog(). A value of 'unix' will connect to the
UNIX domain socket returned by _PATH_LOG in
syslog.ph. If syslog.ph fails to define _PATH_LOG,
setlogsock returns undef; otherwise a true value is
returned. 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).
EEXXAAMMPPLLEESS
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)
DDEEPPEENNDDEENNCCIIEESS
SSyyss::::SSyysslloogg needs syslog.ph, which can be created with
h2ph.
SSEEEE AALLSSOO
the syslog(3) manpage
AAUUTTHHOORR
Tom Christiansen lt;tchrist@perl.com and Larry Wall
lt;larry@wall.org. UNIX domain sockets added by Sean
Robinson lt;robinson_s@sc.maricopa.edu with support from
Tim Bunce lt;Tim.Bunce@ig.co.uk and the perl5-porters
mailing list.