1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166
|
NAME
Catalyst::Log::Log4perl - DEPRECATED (see Log::Log4perl::Catalyst)
SYNOPSIS
In MyApp.pm:
use Catalyst::Log::Log4perl;
# then we create a custom logger object for catalyst to use.
# If we don't supply any arguments to new, it will work almost
# like the default catalyst-logger.
__PACKAGE__->log(Catalyst::Log::Log4perl->new());
# But the real power of Log4perl lies in the configuration, so
# lets try that. example.conf is included in the distribution,
# alongside the README and Changes.
__PACKAGE__->log(Catalyst::Log::Log4perl->new('example.conf'));
And later...
$c->log->debug("This is using log4perl!");
DESCRIPTION
This module provides a Catalyst::Log implementation that uses
Log::Log4perl as the underlying log mechanism. It provides all the
methods listed in Catalyst::Log, with the exception of:
levels
enable
disable
These methods simply return 0 and do nothing, as similar functionality
is already provided by Log::Log4perl.
These methods will all instantiate a logger with the component set to
the package who called it. For example, if you were in the
MyApp::C::Main package, the following:
package MyApp::C::Main;
sub default : Private {
my ( $self, $c ) = @_;
my $logger = $c->log;
$logger->debug("Woot!");
}
Would send a message to the Myapp.C.Main Log::Log4perl component.
See Log::Log4perl for more information on how to configure different
logging mechanisms based on the component.
METHODS
new($config, [%options])
This builds a new Catalyst::Log::Log4perl object. If you provide an
argument to new(), it will be passed directly to
Log::Log4perl::init.
The second (optional) parameter is a hash with extra options.
Currently three additional parameters are defined:
'autoflush' - Set it to a true value to disable abort(1) support.
'watch_delay' - Set it to a true value to use L<Log::Log4perl>'s init_and_watch
'override_cspecs' - EXPERIMENTAL
Set it to a true value to locally override some parts of
L<Log::Log4perl::Layout::PatternLayout>. See L<OVERRIDING CSPECS> below
Without any arguments, new() will initialize a root logger with a
single appender, Log::Log4perl::Appender::Screen, configured to have
an identical layout to the default Catalyst::Log object.
_flush()
Flushes the cache. Much like the way Catalyst::Log does it.
abort($abort)
Causes the current log-object to not log anything, effectivly
shutting up this request, making it disapear from the logs.
debug($message)
Passes it's arguments to $logger->debug.
info($message)
Passes it's arguments to $logger->info.
warn($message)
Passes it's arguments to $logger->warn.
error($message)
Passes it's arguments to $logger->error.
fatal($message)
Passes it's arguments to $logger->fatal.
is_debug()
Calls $logger->is_debug.
is_info()
Calls $logger->is_info.
is_warn()
Calls $logger->is_warn.
is_error()
Calls $logger->is_error.
is_fatal()
Calls $logger->is_fatal.
levels()
This method does nothing but return "0". You should use
Log::Log4perl's built in mechanisms for setting up log levels.
enable()
This method does nothing but return "0". You should use
Log::Log4perl's built in mechanisms for enabling log levels.
disable()
This method does nothing but return "0". You should use
Log::Log4perl's built in mechanisms for disabling log levels.
OVERRIDING CSPECS
Due to some fundamental design incompatibilities of Log::Log4perl and
Catalyst::Log all cspecs of Log::Log4perl::Layout::PatternLayout that
rely on call stack information fail to work as expected. Affected are
the format strings %L, %F, %C, %M, %l and %T. You can instruct
Catalyst::Log::Log4perl to try to hijack these patterns which seems to
work reasonable well, but be advised that this feature is HIGHLY
EXPERIMENTAL and relies on a few internals of Log::Log4perl that might
change in later versions of this library. Additionally, this feature is
currently only tested with Log::Log4perl version 1.08 allthough the
underlying internals of Log::Log4perl seem to be stable since at least
version 0.47.
BUGS AND LIMITATIONS
The %T cspec of Log::Log4perl::Layout::PatternLayout is currently
unimplemented. The implementation to get %M defies any logical approach
but seems to work perfectly.
SEE ALSO
Log::Log4perl, Catalyst::Log, Catalyst.
AUTHORS
Adam Jacob, "adam@stalecoffee.org"
Andreas Marienborg, "omega@palle.net"
Gavin Henry, "ghenry@suretecsystems.com" (Typos)
Sebastian Willert (Overriding CSPECS)
J. Shirley "jshirley@gmail.com" (Adding _dump)
Tomas Doran (t0m) "bobtfish@bobtfish.net" (Current maintainer)
Wallace Reis (wreis) "wreis@cpan.org"
COPYRIGHT
Copyright (c) 2005 - 2009 the Catalyst::Log::Log4perl "AUTHORS" as
listed above.
LICENSE
This library is free software. You can redistribute it and/or modify it
under the same terms as perl itself.
|