我尝试了几种选择。但任何事情都对我不起作用。
以前我在 Tomcat 6,7 中使用了相同的 log4j.xml(简单通用配置),我可以通过更新 log4j.xml 来控制根日志记录和应用程序日志记录。
当我使用 JBoss AS 7.1 部署同一个项目时,它只给我 INFO 级别的日志记录,而我的 log4j.xml 根本不起作用。有时可以通过更新 JBoss 服务器中的一些配置文件来解决此问题,但我想知道是否有可移植的方法或类似的方法。如果这是 JBoss AS 7.1 的错误或其他问题,无论如何我都想知道快速修复。
我以前没有和 JBoss 合作过。
谢谢!
最佳答案
我遇到了这个问题并通过以下方法解决了:
使用您自己的 log4j jar,而不是 jboss 提供的。通过从您的应用程序中排除 jboss org.apache.log4j jar 模块(在 jboss-deployment-structure.xml 中排除它)并在 .ear 包的 lib 文件夹中添加您自己的 log4j jar 文件来做到这一点。
现在将 log4j.xml 放在模块的根文件夹中。
通过这种方法,您可以完全控制 log4j(如独立应用程序)。
如果您需要更多帮助,请告诉我。
排除 log4j.jar 的示例 jboss-deployment-structure.xml:
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.0">
<deployment>
<exclusions>
<module name="org.apache.log4j" slot="main"/>
</exclusions>
</deployment>
<sub-deployment name="MyEjb.jar">
<exclusions>
<module name="org.apache.log4j"/>
</exclusions>
</sub-deployment>
关于jboss - 如何使用 Jboss AS 7.1 启用自定义 log4j,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17136035/