Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl interface to the UNIX syslog(3) calls
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;
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(3)
syslog()
printf()
Syslog provides the functions:
$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
If $priority permits, logs ($format, @args) printed as by printf(3V), with the addition that %m is replaced with "$!" (the latest error message).
printf(3V)
"$!"
Sets log mask $mask_priority and returns the old mask.
Sets the socket type to be used for the next call to openlog() or syslog() and returns TRUE on success, undef on failure.
openlog()
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.
_PATH_LOG
The default is for the INET socket to be used.
Closes the log file.
Note that openlog now takes three arguments, just like openlog(3).
openlog
openlog(3)
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)
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>.
To install lib, copy and paste the appropriate command in to your terminal.
cpanm
cpanm lib
CPAN shell
perl -MCPAN -e shell install lib
For more information on module installation, please visit the detailed CPAN module installation guide.