Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Log4Perl together with Config::Auto

by weismat (Friar)
on Nov 14, 2008 at 09:10 UTC ( [id://723594]=perlquestion: print w/replies, xml ) Need Help??

weismat has asked for the wisdom of the Perl Monks concerning the following question:

I am about to change my standard logging mechanism to Log4Perl and I have several scripts which take XML configuration files which are read by Config::Auto.
I would like to add the Log4Perl configuration into the very same xml files, but I have not really understood how I could do this.
I realize that there is a Log::Log4perl::Config::DOMConfigurator module, but I am not sure how this is linked to Log4Perl. Is this module ignoring all parts which are outside the xml configuration?
I would really appreciate a code snipplet which helps me to understand this or do you think it is smarter to keep log4Perl seperate?

Replies are listed 'Best First'.
Re: Log4Perl together with Config::Auto
by Anonymous Monk on Nov 15, 2008 at 02:36 UTC
    I would like to add the Log4Perl configuration into the very same xml files, but I have not really understood how I could do this.
    Make it just another key/value pair
    my $log4perlconf = 'blah blah blah blah blah'; $conf->{log4perlconf} = $log4perlconf; ...
    I realize that there is a Log::Log4perl::Config::DOMConfigurator module, but I am not sure how this is linked to Log4Perl.
    What do you mean by "linked to Log4Perl?" Its just an extension, an add-on... Instead of writing your config in Log::Log4perl::Config format, you write it in xml (log4perl.dtd or log4j.dtd)

    Is this module ignoring all parts which are outside the xml configuration?
    ???? Not sure what you're asking, but I think the answer is no.

Re: Log4Perl together with Config::Auto
by saintmike (Vicar) on Nov 15, 2008 at 20:48 UTC
    I would like to add the Log4Perl configuration into the very same xml files, but I have not really understood how I could do this.
    If you have a collection of XML files to configure your application, just add another configuration file for Log4perl to the collection.

    Now, you can configure Log4perl in XML or in the native Log4perl format. I personally dislike XML because it's hard to read, so I use the standard configuration format as explained in the Log4perl manual pages.

    If you really want to embed the Log4perl configuration in your configuration format, you're gonna lose useful features like init_and_watch(), but you can do that by parsing out the configuration, storing it in a hash and passing it to init(). See the section alternative initialization in the Log4perl manual for details.

    But again, I'd recommend using the standard way with a separate configuration file, it definitely has its advantages.

      Thanks for your replys.
      I have decided to go the seperate configuration file way as I do not want to use features and want to keep the configurations seperate.
      I am also using Log4Net and this one supports the very same xml file features as it simply ignores any unknown parts of the xml file.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://723594]
Approved by wfsp
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others exploiting the Monastery: (3)
As of 2024-04-25 19:24 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found