Sys::Syslog - Perl Interface to UNIX syslog(3) Calls
use Sys::Syslog; openlog $ident, $logopt, $facility; syslog $priority, $mask, $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). Sys::Syslog needs syslog.ph, which must be created with h2ph by your system administrator.
Sys::Syslog provides these functions:
openlog $ident, $logopt, $facility$identis prepended to every message.$logoptcontains one or more of the wordspid,ndelay,cons,nowait.$facilityspecifies the part of the system making the log entry.syslog $priority, $mask, $format, @args- If
$priorityand$maskpermit, logs a message formed as if bysprintf($format, @args), with the addition that%mis replaced with"$!"(the latest error message). setlogmask $mask_priority- Sets log mask to
$mask_priorityand returns the old mask. closelog- Closes the log file.
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'); openlog("$program $$", 'ndelay', 'user'); syslog('notice', 'fooprogram: this is really done'); $! = 55; syslog('info', 'problem was %m'); # %m == $! in syslog(3)