如何在JBoss WildFly 8 自定義log4j日志


最近在 JBoss WildFly 8 下部署 Web應用,自定義的 log4j 日志不工作。console下無日志輸出,用System.out.println都不輸出內容到console。

原因是JBoss WildFly 8 自帶了日志功能,其中包含了log4j。

解決辦法:

第一步:在standalone\configuration\standalone.xml 中找到如下配置信息

  <profile>
        <subsystem xmlns="urn:jboss:domain:logging:2.0">
            <console-handler name="CONSOLE">
                <level name="INFO"/>
                <formatter>
                    <named-formatter name="COLOR-PATTERN"/>
                </formatter>
            </console-handler>

在<subsystem xmlns="urn:jboss:domain:logging:2.0">下面添加 <use-deployment-logging-config value="false"/>

添加后為

  <profile>
        <subsystem xmlns="urn:jboss:domain:logging:2.0">
            <use-deployment-logging-config value="false"/>
            <console-handler name="CONSOLE">
                <level name="INFO"/>
                <formatter>
                    <named-formatter name="COLOR-PATTERN"/>
                </formatter>
            </console-handler>

第二步:在Web應用下添加WEB-INF/classes/jboss-deployment-structure.xml 部署文件,內容如下

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure
    xmlns="urn:jboss:deployment-structure:1.2"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <deployment>
        <exclusions>
            <module name="org.apache.log4j"></module>
        </exclusions>
    </deployment>
</jboss-deployment-structure>

重新啟動JBoss WildFly 8,日志按WEB-INF/classes/log4j.properties 中自定義的格式輸出了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM