log4j 1.3 is definitely different that log4j 1.2 in internal
logging. log4j 1.2 used the LogLog class and basically wrote
everything out to the Console. log4j 1.3 uses itself for logging
using logger names "org.apache.log4j...". Things particularly get
interesting in configuration as log messages are cached until the
configuration is complete and then replayed through the newly
configured logging hierarchy. That additivity doesn't work as
expected in that scenario.
The internal logging (particularly in the Joran configuration) is
much more "chatty" in log4j 1.3 than in log4j 1.2. In log4j 1.2, you
didn't see anything in the console unless something was seriously
wrong. In log4j 1.3, a lot of normal conditions are logged as "INFO"
and without an explicit step to raise the threshold for the
"org.apache.log4j" level, your application log might be polluted with
a lot of new messages that you would not have seen with log4j 1.2.
This is apparent in the test cases where almost all the configuration
files needed to add something like:
# Prevent internal log4j DEBUG messages from polluting the output.
log4j.logger.org.apache.log4j.PropertyConfigurator=INFO
log4j.logger.org.apache.log4j.config.PropertySetter=INFO
log4j.logger.org.apache.log4j.FileAppender=INFO
To prevent log4j internal logging from causing the comparison with
the expected files to fail.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]