我正在将应用程序从 log4j 1.2 转换为 log4j2。在 log4j.properties 文件中,我发现了与 Java util 日志记录相关的以下配置。
handlers=java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level=SEVERE
如何将此配置转换为 log4j2 配置?
谢谢!
最佳答案
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>
关于java - 将JUL相关的log4j 1.2配置转换为log4j 2配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30071284/