log4j.properties在wildfly上无法正常工作

时间:2014-10-21 13:55:52

标签: java logging log4j wildfly

我在类路径中有一个log4j.properties文件。

在APP / XX.jar / log4j.properties位置找到它。

我注意到在ear文件中我也可以在lib文件夹中找到log4j-1.2.17.jar。

但无论我在log4j.properties文件中写了什么,都会被忽略。像:

log4j.rootCategory=WARN

或类似的东西:

log4j.rootCategory=INFO, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.logger.org.springframework=WARN

但是所有的记录仍然会在服务器上打印出来。

我是否将它们配置错误或让我的Wildfly这个属性文件igored?

1 个答案:

答案 0 :(得分:7)

给定属性文件的位置,它将被忽略。如果log4j.properties文件位于EAR/META-INF目录中,则WildFly将尝试为您配置log4j。建议不要使用ConsoleAppender,因为它可能会导致死锁,因为appender试图写入System.outSystem.out被包装在WildFly中。

鉴于配置,这将为您提供三个选项。

  1. add-logging-api-dependencies的值更改为false
  2. 添加jboss-deployment-structure.xml并禁用部署中的日志记录子系统
  3. 通过日志记录子系统配置日志记录。这可以通过全球或logging-profile完成。