NAME¶
Log::Report::Dispatcher::Log4perl - send messages to Log::Log4perl back-end
INHERITANCE¶
Log::Report::Dispatcher::Log4perl
is a Log::Report::Dispatcher
SYNOPSIS¶
dispatcher Log::Log4perl => 'logger', accept => 'NOTICE-'
, config => "$ENV{HOME}/.log.conf"
, to_level => [ 'ALERT-' => $ERROR ];
# disable default dispatcher
dispatcher close => 'logger';
# configuration inline, not in file: adapted from the Log4perl manpage
my $name = 'logger';
my $outfile = '/tmp/a.log';
my $config = <<__CONFIG;
log4perl.category.$name = INFO, Logfile
log4perl.appender.Logfile = Log::Log4perl::Appender::File
log4perl.appender.Logfile.filename = $outfn
log4perl.appender.Logfile.layout = Log::Log4perl::Layout::PatternLayout
log4perl.appender.Logfile.layout.ConversionPattern = %d %F{1} %L> %m
__CONFIG
dispatcher 'Log::Log4perl' => $name, config => \$config;
DESCRIPTION¶
This dispatchers produces output tot syslog, based on the
"Sys::Log4perl" module (which will not be automatically installed
for you).
The REASON for a message often uses names which are quite similar to the
log-levels used by Log::Dispatch. However: they have a different approach. The
REASON of Log::Report limits the responsibility of the programmer to indicate
the cause of the message: whether it was able to handle a certain situation.
The Log::Dispatch levels are there for the user's of the program. However: the
programmer does not known anything about the application (in the general
case). This is cause of much of the trickery in Perl programs.
The default translation table is list below. You can change the mapping using
new(to_level). See example in SYNOPSIS.
TRACE => $DEBUG ERROR => $ERROR
ASSERT => $DEBUG FAULT => $ERROR
INFO => $INFO ALERT => $FATAL
NOTICE => $INFO FAILURE => $FATAL
WARNING => $WARN PANIC => $FATAL
MISTAKE => $WARN
METHODS¶
Constructors¶
- $obj->close
- See "Constructors" in
Log::Report::Dispatcher
- Log::Report::Dispatcher::Log4perl->new(TYPE,
NAME, OPTIONS)
- The Log::Log4perl infrastructure has all information in a
configuration file. In that file, you should find a category with the
NAME.
-Option --Defined in --Default
accept Log::Report::Dispatcher depend on mode
charset Log::Report::Dispatcher <undef>
config <required>
format_reason Log::Report::Dispatcher 'LOWERCASE'
locale Log::Report::Dispatcher <system locale>
mode Log::Report::Dispatcher 'NORMAL'
to_level []
- accept => REASONS
- charset => CHARSET
- config => FILENAME|SCALAR
- When a SCALAR reference is passed in, that must refer to a
string which contains the configuration text. Otherwise, specify an
existing FILENAME.
- format_reason =>
'UPPERCASE'|'LOWERCASE'|'UCFIRST'|'IGNORE'|CODE
- locale => LOCALE
- mode => 'NORMAL'|'VERBOSE'|'ASSERT'|'DEBUG'|0..3
- to_level => ARRAY-of-PAIRS
- See reasonToLevel().
Accessors¶
- $obj->appender
- Returns the Log::Log4perl::Logger object which is used for
logging.
- $obj->isDisabled
- See "Accessors" in Log::Report::Dispatcher
- $obj->mode
- See "Accessors" in Log::Report::Dispatcher
- $obj->name
- See "Accessors" in Log::Report::Dispatcher
- $obj->needs
- See "Accessors" in Log::Report::Dispatcher
- $obj->type
- See "Accessors" in Log::Report::Dispatcher
Logging¶
- $obj->collectLocation
- Log::Report::Dispatcher::Log4perl->collectLocation
- See "Logging" in Log::Report::Dispatcher
- $obj->collectStack([MAXDEPTH])
- Log::Report::Dispatcher::Log4perl->collectStack([MAXDEPTH])
- See "Logging" in Log::Report::Dispatcher
- $obj->log(HASH-of-OPTIONS, REASON, MESSAGE)
- See "Logging" in Log::Report::Dispatcher
- $obj->reasonToLevel(REASON)
- Returns a level which is understood by Log::Dispatch, based
on a translation table. This can be changed with new(to_level).
- $obj->stackTraceLine(OPTIONS)
- Log::Report::Dispatcher::Log4perl->stackTraceLine(OPTIONS)
- See "Logging" in Log::Report::Dispatcher
- $obj->translate(HASH-of-OPTIONS, REASON,
MESSAGE)
- See "Logging" in Log::Report::Dispatcher
SEE ALSO¶
This module is part of Log-Report distribution version 0.94, built on August 23,
2011. Website:
http://perl.overmeer.net/log-report/
LICENSE¶
Copyrights 2007-2011 by Mark Overmeer. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself. See
http://www.perl.com/perl/misc/Artistic.html