PerlModule Apache::LogFile
PerlModule Apache::LogFile::Config
PerlLogFile "logs/loadbalancer.log" Tiscali::LoadBalancerLogFile
PerlFixuphandler Tiscali::LogLoadBalancer
####
Mon Jul 9 16:53:56 2007 [25101] X-Loadbalancer: 2 (INVALID)Mon Jul 9 16:53:56 2007 [25108] X-Loadbalancer: 1 (OK)Mon Jul 9 16:53:56 2007 [25102] X-Loadbalancer: 0 (OK)
Mon Jul 9 16:53:56 2007 [25101] X-Loadbalancer: 2 (INVALID)
##
##
package Tiscali::LogLoadBalancer ;
use strict ;
use warnings ;
use Apache::Constants qw{:common} ;
sub handler {
my ($self,$r) = @_ ;
$r ||= Apache->request() ;
my $status ;
my $lb = $r->header_in( q{X-Loadbalancer} ) ;
if (defined $lb) {
$status = q{INVALID} ;
$status = q{OK} if $lb == 0 ;
$status = q{OK} if $lb == 1 ;
} else {
$lb = q{UNDEF} ;
$status = q{OK} ;
}
_logger($lb,$status) ;
return DECLINED ;
}
sub _logger {
my ($lb_value,$status) = @_ ;
my $now = localtime ;
my $pid = $$ ;
my $message = qq{$now [$pid] X-Loadbalancer: $lb_value ($status)} ;
print Tiscali::LoadBalancerLogFile $message ;
}
1 ;