Question

I just have finished adjustment of log4j2.xml configuration file and spotted something I don't really understand. So what is <Configuration status="SOME_STATUS_HERE">?

Almost in all examples here : http://logging.apache.org/log4j/2.x/manual/configuration.html folks from Apache added status to configuration.

For example here is the first one:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN"> <!--status="WARN" - what is this???--> 

 <Appenders>
  <Console name="Console" target="SYSTEM_OUT">
   <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
  </Console>
 </Appenders>

 <Loggers>
  <Root level="error">
   <AppenderRef ref="Console"/>
  </Root>
 </Loggers>

</Configuration>
Was it helpful?

Solution

The status logger is used internally by log4j2 components. Setting status="debug" (or "trace") in the configuration will cause this internal logging to be output to the command line.

It will print debug information about which log4j2 plugin components are loaded (all configuration elements map to log4j2 plugins), and more details like for example what appenders and loggers were found, what parameters they have and how they are combined.

This is useful for troubleshooting configuration issues.

From Log4j 2.9, you can use system property log4j2.debug (no value required) to turn on internal Log4j2 status logging even before the configuration file is loaded. Prior to version 2.9, the same can be achieved with system property -Dorg.apache.logging.log4j.simplelog.StatusLogger.level=TRACE.

OTHER TIPS

In case someone is wondering where the Log4j2 XML <Configuration> element attributes are mentioned in the Log4j2 documentation, I thought it could be useful to provide the link here. See also a snapshot of the attribute list below:

Configuration element attributes

And in case anyone is looking for the correct levels for the status attribute they're: trace, debug, info, warn, error and fatal.

Log4j2 Configuration

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top