jboss as 5.1 logback slf4j log4j

jboss as 5.1 logback slf4j log4j,jboss,log4j,logback,Jboss,Log4j,Logback,我正在JBoss5.1上的一个Web应用程序中使用logback。webapp正在使用slf4j API。不过,输出看起来像是log4j和logback的组合。log4j消息似乎是logback输出。因此,需要两个时间戳、信息和调试等 2011-02-02 09:34:05359信息[STDOUT](http-127.0.0.1-8080-2)09:34:05.359[http-127.0.0.1-8080-2]调试com.clear.wib.servlet.Proxy-wib数据可用=1783

我正在JBoss5.1上的一个Web应用程序中使用logback。webapp正在使用slf4j API。不过,输出看起来像是log4j和logback的组合。log4j消息似乎是logback输出。因此,需要两个时间戳、信息和调试等

2011-02-02 09:34:05359信息[STDOUT](http-127.0.0.1-8080-2)09:34:05.359[http-127.0.0.1-8080-2]调试com.clear.wib.servlet.Proxy-wib数据可用=1783


我怎样才能让webapp只输出logback消息?谢谢

我认为你做不到。JBoss劫持SLF4J APi并将其重定向到自己的日志框架中,然后再重定向到Log4j。如果您尝试将其重定向到Logback,您将得到不一致的结果


像JBoss这样的应用服务器提供自己的日志记录功能。与之抗争只会给你带来痛苦。

我通过编辑jboss-service.xml解决了这个问题。您必须删除此文件中“log4j初始化”块下的log4j mbean,然后重新启动服务器


这不会对JBoss服务器日志记录造成任何问题。

对于较新版本的JBoss,这仍然是正确的吗?JBossAS7,Wildfly 8?