log4j2 Filter用法詳解

主要說下組合過濾器 CompositeFilter ,比較常用
<Filters> 是組合過濾器額標簽,它包含的子標簽是具體的過濾器,這三個具體過濾器分別是日志等級過濾器,正則表達式過濾器時間過濾器。
需要說明的是onMatch和onMismatch可以選擇的值及其含義??蛇x的值分別是,ACCEPT, DENY, NEUTRAL,ACCEP和DENY比較好理解就是接受和拒絕的意思,在使用單個過濾器的時候,一般就是使用這兩個值。
但是在組合過濾器中,如果用接受ACCEPT的話,日志信息就會直接寫入日志文件,后續(xù)的過濾器不再進行過濾。--- 有點像switch case break; 直接截斷了 不會往下判斷了。
在組合過濾器中,接受使用NEUTRAL(中立),被第一個過濾器接受的日志信息,會繼續(xù)用后面的過濾器進行過濾,只有符合所有過濾器條件的日志信息,才會被最終寫入日志文件。 --- 也就是層層過濾的意思,要都滿足條件才能寫入日志

例子1
<!-- 所要過濾的內(nèi)容必須是日志內(nèi)容詳情,前面的包名不算  -->
<Filters>
            <ThresholdFilter level="TRACE" onMatch="NEUTRAL" onMismatch="DENY"/>
            <RegexFilter regex=".* test .*" onMatch="NEUTRAL" onMismatch="DENY"/>
                <TimeFilter start="05:00:00" end="05:30:00" onMatch=" NEUTRAL " onMismatch="DENY"/>     
</Filters>    

例子2 意思是日志內(nèi)存包含 HiveSql 或 hive lines 或 sql_type 或  => 的INFO及其INFO以下級別的日志
  <Filters>
                
                <ThresholdFilter level="INFO" onMatch="NEUTRAL" onMismatch="DENY"/>
                <RegexFilter regex=".*(HiveSql|hive lines|sql_type).*" onMatch="NEUTRAL" onMismatch="DENY"/>
                <RegexFilter regex=".*=>.*" onMatch="NEUTRAL" onMismatch="DENY"/>
</Filters>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • logback詳解 說明:下面內(nèi)容從網(wǎng)上搜集整理而來 與log4j對比 更快的執(zhí)行速度: 基于我們先前在log4j...
    億萬年星空閱讀 3,161評論 1 1
  • 常用配置指令說明 1. ServerRoot:服務(wù)器的基礎(chǔ)目錄,一般來說它將包含conf/和logs/子目錄,其它...
    小僧有禮了閱讀 4,707評論 0 5
  • ORA-00001: 違反唯一約束條件 (.) 錯誤說明:當在唯一索引所對應(yīng)的列上鍵入重復(fù)值時,會觸發(fā)此異常。 O...
    我想起個好名字閱讀 5,966評論 0 9
  • 本文轉(zhuǎn)自云棲社區(qū)-點擊可以查看原文 1 基本介紹 每一個Java程序員都知道日志對于任何一個Java應(yīng)用程序,尤其...
    小孩真笨閱讀 4,603評論 0 0
  • 感謝讓我蹭車的90后貨車司機, 雖然走走停停, 還是少走了幾公里。 辛苦的長途車, 二十多天的離家路。 說實話, ...
    痞子杜甫閱讀 370評論 0 0

友情鏈接更多精彩內(nèi)容