Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Best Practice for Integrating log4perl

by jthalhammer (Friar)
on Aug 24, 2005 at 04:17 UTC ( #486087=perlquestion: print w/replies, xml ) Need Help??
jthalhammer has asked for the wisdom of the Perl Monks concerning the following question:

Dear Monks,

My team is eager to adopt log4perl, but we don't agree on how to integrate it with our system. In your experience, how do most people it? Do they create wrappers, make subclasses, or just use native log4perl interface? What criteria do they use for making that decision? Thanks

Replies are listed 'Best First'.
Re: Best Practice for Integrating log4perl
by jbrugger (Parson) on Aug 24, 2005 at 05:38 UTC
    As noted in the documentation of cpan, you indeed can initialized it in two ways:
    Either via Perl commands or via a log4j-style configuration file.

    Since this is the easiest way (and i consider it more maintainable / readable), i'd use the log4j style config file:
    #log.conf: log4perl.rootLogger=ERROR, LOGFILE log4perl.appender.LOGFILE=Log::Log4perl::Appender::File log4perl.appender.LOGFILE.filename=/var/log/myerrs.log log4perl.appender.LOGFILE.mode=append log4perl.appender.LOGFILE.layout=PatternLayout log4perl.appender.LOGFILE.layout.ConversionPattern=[%r] %F %L %c - %m% +n # in your perl-script: use Log::Log4perl; Log::Log4perl->init("log.conf"); # Anywhere you log: package blah; use Log::Log4perl; sub new() { ... $self->{debug} = $debug; ... } sub method { my $self=shift; my($param) = @_; my $log = Log::Log4perl->get_logger("blah"); $log->debug("Debug ...") if $self->{debug}; $log->info("Info ...") if $ $self->{debug}; $log->error("Error ...") if $self->{debug};

    All examples ar shamelesly taken from the Log::Log4perl docs.

    "We all agree on the necessity of compromise. We just can't agree on when it's necessary to compromise." - Larry Wall.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://486087]
Approved by ysth
LanX ...(by train from Frankfurt)
[LanX]: renting a car could be an option ...
[NodeReaper]: speedboat

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (10)
As of 2018-03-19 11:58 GMT
Find Nodes?
    Voting Booth?
    When I think of a mole I think of:

    Results (239 votes). Check out past polls.