You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-user@logging.apache.org by Markus Mayer <m....@generali.at> on 2004/06/28 13:48:20 UTC

different classes logging to different files

hi all,
so far log4j worked really great for me. thanks for everything. but now i 
am facing a (probably) minor problem that i couldn't fix for some time. 

i would like to have a general log file for all my classes in my 
application. under special circumstances i would like to send some log 
messages to two log files (one only containing the special messages). i 
set up log4j like this

# *********************************************
# ** Logger configuration                                        ** 
# *********************************************
# Set root logger level to DEBUG and its only appender to A1.
log4j.rootLogger=INFO, stdout, logfile
log4j.TaskLogger=INFO, stdout, logfile
log4j.FailureLogger=INFO, stdout,failurefile

# stdout is set to be a ConsoleAppender.
log4j.appender.stdout=org.apache.log4j.ConsoleAppender

# stdout uses PatternLayout.
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%-5r (%d) [%t] %-5p %c %x - 
%m%n
 
#logfile
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.Append=false
log4j.appender.logfile.File=migration.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%-5r (%d) [%t] %-5p %c %x 
- %m%n

#failurefile
log4j.appender.failurefile=org.apache.log4j.FileAppender
log4j.appender.failurefile.Append=false
log4j.appender.failurefile.File=failure.log
log4j.appender.failurefile.layout=org.apache.log4j.PatternLayout
log4j.appender.failurefile.layout.ConversionPattern=%-5r (%d) [%t] %-5p %c 
%x - %m%n

in java i setup the loggers like this:

<snip>
Logger logger = Logger.getLogger("log4j.TaskLogger");
Logger migFailedLogger = Logger.getLogger("log4j.FailureLogger");
PropertyConfigurator.configure(props);
</snip>

when i send an event to the second (migFailedLogger) i only get entries in 
the appenders "stdout" and in "logfile" but not in the "failurefile" 
appender. anybody knows what's going wrong here?

thanks in advance,
markus