You are viewing the version of this documentation from Perl 5.6.0. View the latest version

CONTENTS

#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)

#SEE ALSO

syslog(3)

#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. Dependency on syslog.ph replaced with XS code bu Tom Hughes <tom@compton.nu>.

AltStyle によって変換されたページ (->オリジナル) /