Java
Java

Reputation: 113

How to change log4j properties to log4j2 properties?

log4j.rootCategory=DEBUG,CONSOLE

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=DEBUG
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d %-5p %-30c - %m%n

log4j.logger.org.apache.velocity=WARN

I need to migrate from log4j to log4j2 and I need to change properties file as above. Maybe somebody can help me to understand how would be log4j2.properties look like.

This is what I have done by myselfe, but I-m not sure if its correct

appenders = console

appender.console.type = Console
appender.console.name = STDOUT
appender.console.threshold=DEBUG
appender.console.layout.type=PatternLayout
appender.console.layout.pattern=%d %-5p %-30c - %m%n

Upvotes: 2

Views: 5312

Answers (1)

Piotr P. Karwasz
Piotr P. Karwasz

Reputation: 16045

The properties format of Log4j2 is not the most popular one. You can see this answer for the logic behind this format.

You configuration lacks the configuration of the loggers:

appender.1.type=Console
appender.1.name=STDOUT
appender.1.target=SYSTEM_OUT
appender.1.layout.type=PatternLayout
appender.1.layout.pattern=%d %-5p %-30c - %m%n

rootLogger.level=DEBUG
rootLogger.appenderRef.1.ref=STDOUT
rootLogger.appenderRef.1.level=DEBUG

logger.1.name=org.apache.velocity
logger.1.level=WARN

Remark also, that an appender's threshold is usually configured on the AppenderRef (cf. this question).

Personally I find the XML format easier to understand:

<Configuration xmlns="http://logging.apache.org/log4j/2.0/config">
  <Appenders>
    <Console
      name="Console"
      target="SYSTEM_OUT">
      <PatternLayout pattern="%d %-5p %-30c - %m%n" />
    </Console>
  </Appenders>
  <Loggers>
    <Root level="DEBUG">
      <AppenderRef
        ref="Console"
        level="DEBUG" />
    </Root>
    <Logger
      name="org.apache.velocity"
      level="WARN" />
  </Loggers>
</Configuration>

Upvotes: 2

Related Questions