log4j2配置按照日志級別將日志輸出到不同的文件


背景

在項目中,可能會產生非常多的日志記錄,為了方便日志分析,可以將日志按級別輸出到指定文件。

 

log4j2.xml配置文件

        <!--將info級別的日志單獨輸出到info.log中-->
        <RollingFile name="INFO-LOG"  fileName="info.log">
            <Filters>
                <!--將WARN及其以上級別的日志給DENY掉-->
                <ThresholdFilter level="WARN"  onMatch="DENY"   onMismatch="NEUTRAL"/>
                <!--ACCEPT info級別的日志-->
                <ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY" />
            </Filters>
        </RollingFile>
        <!--將warn級別的日志單獨輸出到warn.log中-->
        <RollingFile name="WARN-LOG"  fileName="warn.log">
            <Filters>
                <!--將ERROR及其以上級別的日志給DENY掉-->
                <ThresholdFilter level="ERROR" onMatch="DENY" onMismatch="NEUTRAL"/>
                <!--ACCEPT warn級別的日志-->
                <ThresholdFilter level="WARN" onMatch="ACCEPT" onMismatch="DENY"/>
            </Filters>
        </RollingFile>
        <!--將error級別的日志單獨輸出到error.log中-->
        <RollingFile name="ERROR-LOG" fileName="error.log">
            <ThresholdFilter level="ERROR" onMatch="ACCEPT" onMismatch="DENY"/>
        </RollingFile>

注意點

重要的是,如果有多個ThresholdFilter,那么Filters是必須的。同時在Filters中,首先要過濾不符合的日志級別,把不需要的首先DENY掉,然后再ACCEPT需要的日志級別,這個次序不能搞顛倒。

 

參考資料

https://www.cnblogs.com/jessezeng/p/5144317.html


免責聲明!

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



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