Log::Log4perl::Appender::Screen - Log to STDOUT/STDERR
Contents
Description
This is a simple appender for writing to STDOUT or STDERR.
The constructor "new()" takes an optional parameter "stderr":
• If set to a false value, it will log all levels to STDOUT (or, more accurately, whichever file handle
is selected via "select()", STDOUT by default).
• If set to a hash, then any "log4p_level" with a truthy value will dynamically use STDERR, or STDOUT
otherwise.
• Otherwise, if a true value (the default setting is 1), messages will be logged to STDERR.
# All messages/levels to STDERR
my $app = Log::Log4perl::Appender::Screen->new(
stderr => 1,
);
# Only ERROR and FATAL to STDERR (case-sensitive)
my $app = Log::Log4perl::Appender::Screen->new(
stderr => { ERROR => 1, FATAL => 1},
);
Design and implementation of this module has been greatly inspired by Dave Rolsky's "Log::Dispatch"
appender framework.
To enable printing wide utf8 characters, set the utf8 option to a true value:
my $app = Log::Log4perl::Appender::Screen->new(
stderr => 1,
utf8 => 1,
);
This will issue the necessary binmode command to the selected output channel (stderr/stdout).
To enable autoflush, set the "autoflush" option to a true value:
my $app = Log::Log4perl::Appender::Screen->new(
autoflush => 1,
);
This will issue the necessary autoflush command to the selected output channel (stderr/stdout).
This is required in containers, especially when the log volume is low, to not buffer the log messages and
cause a significant delay.
License
Copyright 2002-2013 by Mike Schilli <m@perlmeister.com> and Kevin Goess <cpan@goess.org>.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl
itself.
Name
Log::Log4perl::Appender::Screen - Log to STDOUT/STDERR
Synopsis
use Log::Log4perl::Appender::Screen;
my $app = Log::Log4perl::Appender::Screen->new(
autoflush => 1,
stderr => 0,
utf8 => 1,
);
$file->log(message => "Log me\n");
