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

Man*_*ela 3 java logging log4j wildfly

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

它位于APP/XX.jar/log4j.properties位置.

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

但无论我在log4j.properties文件中写了什么,它们都被忽略了.喜欢:

log4j.rootCategory=WARN
Run Code Online (Sandbox Code Playgroud)

或类似的东西:

log4j.rootCategory=INFO, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.logger.org.springframework=WARN
Run Code Online (Sandbox Code Playgroud)

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

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

Jam*_*ins 7

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

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

  1. 将值更改add-logging-api-dependenciesfalse.
  2. jboss-deployment-structure.xml在部署中添加和禁用日志记录子系统
  3. 通过日志子系统配置日志记录.这可以通过全局或通过日志记录配置文件完成.