解决 jboss和log4j的冲突问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决 jboss和log4j的冲突问题相关的知识,希望对你有一定的参考价值。

日志错误内容:

ERROR: invalid console appender config detected, console stream is looping

 

 

方案1:

你先將你程式內部的 log4j.properties or log4j.xml 全部拿掉,再 deploy 
看看。如果沒問題再逐一將 自己的 config 一項一項放進 
/jboss/server/default/conf/log4j.xml 測試。 


方案2:

去[JBOSS_HOME]/server/default/conf/log4j.xml 改或加自己的設定這不太make sense,最好還是要針對個別application有自己的log4j設定檔比較合理。其實application若有自己的log4j war及設定檔,而導致JBoss啟動時出現 "ERROR: invalid console appender config detected, console stream is looping." 錯誤訊息時,只要去JBoss server層的conf資料夾中的jboss-service.xml中的org.jboss.logging.Log4jService的設定區段中加個參數:<attribute name="CatchSystemOut">false</attribute>即可,如: 

 

<mbean code="org.jboss.logging.Log4jService"
name="jboss.system:type=Log4jService,service=Logging"
xmbean-dd="resource:xmdesc/Log4jService-xmbean.xml">
<attribute name="ConfigurationURL">resource:log4j.xml</attribute>
<!-- Set the org.apache.log4j.helpers.LogLog.setQuiteMode. As of log4j1.2.8
this needs to be set to avoid a possible deadlock on exception at the
appender level. See bug#696819.
-->
<attribute name="CatchSystemOut">false</attribute>
<attribute name="Log4jQuietMode">true</attribute>
<!-- How frequently in seconds the ConfigurationURL is checked for changes -->
<attribute name="RefreshPeriod">60</attribute>
</mbean>

以上是关于解决 jboss和log4j的冲突问题的主要内容,如果未能解决你的问题,请参考以下文章

spring boot中log4j冲突问题和解决办法

如何在运行时在 org.jboss.logging 中设置日志记录

自定义Log4j配置文件和RocketMQ-Client.jar下log文件冲突问题解决

HSQL 数据库与 JBoss 冲突

在 JBoss 7.1 中使用 log4j

如何在 JBoss5 中使用 log4j 设置 DBAppender?