Documentation forPapertrail

Perl

Papertrail can accept logs from any Perl script using either a local log file or the Sys::Syslog module.

Send log file with remote_syslog2

Configure your script to log to a file as usual, then transmit the log file to Papertrail using remote_syslog2. This does not require any modifications to the app.

Send events with Perl's Sys::Syslog module

Perl can also send log messages directly to Papertrail using >= 0.28 of the Sys::Syslog module.

To determine which version of Sys:Syslog is installed:

Copy
$ perl -MSys::Syslog -e 'print "$Sys::Syslog::VERSION\n"'

To update it:

Copy
$ sudo perl -MCPAN -e shell
  # Accept all the defaults or modify as necessary
cpan> install Sys::Syslog
cpan> exit

Example

The following sends a UDP syslog message:

Copy
use Sys::Syslog qw(:standard :macros setlogsock);  # standard functions & macros
$program = "PROGRAM";
$sender = "SENDER";
openlog("$program $sender", 'noeol,nonul');
setlogsock({ type => "udp", host => "logsN.papertrailapp.com", port => XXXXX });
syslog('info', 'something happened over here');
closelog();

Replace logsN and XXXXX with details from one of your Papertrail log destinations, and $program and $sender as desired.

The scripts are not supported under any SolarWinds support program or service. The scripts are provided AS IS without warranty of any kind. SolarWinds further disclaims all warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The risk arising out of the use or performance of the scripts and documentation stays with you. In no event shall SolarWinds or anyone else involved in the creation, production, or delivery of the scripts be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the scripts or documentation.