Logging to Syslog

Arrange for all servers on "server farm" to log to syslog.

httpd.conf Entry (one per server host)

  <VirtualHost www.company1.com>
     CustomLog "| /usr/local/apache/bin/logger company1" common
     # blah blah
  </VirtualHost>

  <VirtualHost www.company2.com>
     CustomLog "| /usr/local/apache/bin/logger company2" common
     # blah blah
  </VirtualHost>

syslog.conf Entry (one per server host)

local0.info   ifdef(`LOGHOST',/var/log/web/access_log,@loghost)

Script I.1.8: logger

 #!/usr/local/bin/perl
 # script: logger

 use Sys::Syslog;

 $SERVER_NAME = shift || 'www';
 $FACILITY = 'local0';
 $PRIORITY = 'info';

 Sys::Syslog::setlogsock('unix');
 openlog ($SERVER_NAME,'ndelay',$FACILITY);
 while (<>) {
     chomp;
     syslog($PRIORITY,$_);
 }
 closelog;

<< Previous Contents >> Next >>

Lincoln D. Stein, lstein@cshl.org
Cold Spring Harbor Laboratory
Last modified: Mon Aug 17 10:42:37 EDT 1998