日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

log4j2配置文件的故事

發布時間:2025/3/21 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 log4j2配置文件的故事 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

從前有個老頭叫<configuration>,他有兩個兒子,忠厚老實的老大叫<appenders>,
并且<appenders>有三個兒子,分別叫<console>,<File>和<RollingFile>。這三個都是比較有才華的小伙子。
另一個處事圓滑的老二叫<loggers>,年輕時放蕩不羈,留戀紙醉迷金的生活,至今沒有成家,但是長時間混跡在大城市中的他,倒也有些名氣,好多人偷偷送禮托他辦事。
這是家譜:

<?xml version="1.0" encoding="UTF-8"?> <configuration><appenders><File></File><console></console><RollingFile></RollingFile></appenders><loggers></loggers></configuration>

我們來詳細介紹一下

老頭configuration

<configuration status="OFF" monitorInterval="30"> </configuration>

status:
這是日志自身的日志。一般寫off,代表關閉不顯示。

八個日志級別以及優先級排序: OFF(關閉) > FATAL(致命的) > ERROR > WARN > INFO > DEBUG > TRACE(堆棧) >

monitorInterval:
刷新此文件的時間間隔,保證修改后的文件及時生效。

大孫子<console>

<console name="Console" target="SYSTEM_OUT"><!--輸出日志的格式--><PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/></console>

很顯然配置這個是大孫子能夠將日志輸出至控制臺。

二孫子<File>

<File name="log" fileName="log/test.log" append="false"><PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n"/></File>

二孫子的擅長將日志寫在指定文件夾下的文件里。
fileName:
是生成的日志文件路徑加名稱以及后綴名, log/test.log指在跟目錄log文件夾下的test.log
append:
的值為Bollean類型,當為true的時候 ,日志會追加,否則將覆蓋。

小孫子<RollingFile>

<RollingFile name="RollingFileInfo" fileName="logs/info.log" filePattern="${sys:user.home}/logs/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-%i.log"><ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY"/><PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/><Policies><TimeBasedTriggeringPolicy/><SizeBasedTriggeringPolicy size="100 MB"/></Policies></RollingFile>

SizeBasedTriggeringPolicy:一個小孫子的大小,
<ThresholdFilter level:日志級別。
小孫子擅長將老頭子教的八個日志級別分類保存文件里,小孫子可以有多個,一個負責一個級別的日志,至于為什么小孫子可以有多個?這不合情理?,因為他是孫悟空啊。

老頭子見到三個孫子各個身懷絕技了,該去大城市闖蕩闖蕩了,但是他們的爹<appenders>,雖然穩重能干,但是對大城市的情況時一無所知。所以必須讓老二<loggers>來幫這三個孫子指路。

在將要踏上去大城市的路上之前,二孫子<File>突然改變了想法,他認為不去大城市也能做出成績。

老二<loggers>:

老二<loggers>讓他的助理<root>老司機,負責帶<Console>和<RollingFileInfo>飛。

<loggers><root level="all"><appender-ref ref="Console"/><appender-ref ref="RollingFileInfo"/></root></loggers>

后來,<console>和<RollingFile>在二叔的得力助手<root>的指引下,為祖國的建設做的了巨大的貢獻。正如<File>所說,<File>雖然沒有二叔的指導,但是也做出了不小的成就。

下面是完整版

<?xml version="1.0" encoding="UTF-8"?><!--日志級別以及優先級排序: OFF(關閉) > FATAL(致命的) > ERROR > WARN > INFO > DEBUG > TRACE(堆棧) > ALL --><!--Configuration后面的status,這個用于設置log4j2自身內部的信息輸出,可以不設置,當設置成trace時,你會看到log4j2內部各種詳細輸出--><!--monitorInterval:Log4j能夠自動檢測修改配置 文件和重新配置本身,設置間隔秒數--><configuration status="OFF" monitorInterval="30"><!--先定義所有的appender--><appenders><!--這個輸出控制臺的配置--><console name="Console" target="SYSTEM_OUT"><!--輸出日志的格式--><PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/></console>

?from:https://segmentfault.com/a/1190000011094806

總結

以上是生活随笔為你收集整理的log4j2配置文件的故事的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。