我将应用程序从log4j 1.2转换为log4j2。在log4j.properties文件中,我发现了与Java util logging相关的以下配置。
handlers=java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level=SEVERE
如何将此配置转换为log4j2配置?
谢谢!
答案 0 :(得分:1)
Log4j2 provides a bridge将对java.util.logging API的所有调用路由到Log4j2。要激活它,请将系统属性java.util.logging.manager
设置为org.apache.logging.log4j.jul.LogManager
,并将Log4j2 JUL适配器jar添加到类路径中(请参阅" which jars FAQ")。
然后像往常一样配置log4j2。 log4j2手册提供了许多示例配置。
您提供的配置代码段可能会转换为类似下面的内容(我添加了一个FileAppender作为示例)。
<Configuration status="warn"><!-- use status="trace" for troubleshooting -->
<Appenders>
<Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="%m%n"/>
</Console>
<File name="FILE" fileName="myapp.log">
<PatternLayout>
<pattern>%d %p [%t] %c{1.} %m%n</pattern>
</PatternLayout>
</File>
</Appenders>
<Loggers>
<Root level="trace">
<AppenderRef ref="STDOUT" level="ERROR" />
<AppenderRef ref="FILE" />
</Root>
</Loggers>
</Configuration>