| Log-Dispatch documentation | Contained in the Log-Dispatch distribution. |
Log::Dispatch::ApacheLog - Object for logging to Apache::Log objects
version 2.29
use Log::Dispatch;
my $log = Log::Dispatch->new(
outputs => [
[ 'ApacheLog', apache => $r ],
],
);
$log->emerg('Kaboom');
This module allows you to pass messages to Apache's log object, represented by the Apache::Log class.
The constructor takes the following parameters in addition to the standard parameters documented in Log::Dispatch::Output:
An object of either the Apache or Apache::Server classes. Required.
Dave Rolsky <autarch@urth.org>
This software is Copyright (c) 2011 by Dave Rolsky.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)
| Log-Dispatch documentation | Contained in the Log-Dispatch distribution. |
package Log::Dispatch::ApacheLog; BEGIN { $Log::Dispatch::ApacheLog::VERSION = '2.29'; } use strict; use warnings; use Log::Dispatch::Output; use base qw( Log::Dispatch::Output ); use Params::Validate qw(validate); Params::Validate::validation_options( allow_extra => 1 ); BEGIN { if ( $ENV{MOD_PERL} && $ENV{MOD_PERL} =~ /2\./ ) { require Apache2::Log; } else { require Apache::Log; } } sub new { my $proto = shift; my $class = ref $proto || $proto; my %p = validate( @_, { apache => { can => 'log' } } ); my $self = bless {}, $class; $self->_basic_init(%p); $self->{apache_log} = $p{apache}->log; return $self; } { my %methods = ( emergency => 'emerg', critical => 'crit', warning => 'warn', ); sub log_message { my $self = shift; my %p = @_; my $level = $self->_level_as_name( $p{level} ); my $method = $methods{$level} || $level; $self->{apache_log}->$method( $p{message} ); } } 1; # ABSTRACT: Object for logging to Apache::Log objects
__END__