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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

Log4j输出格式控制--log4j的PatternLayout参数含义

發布時間:2025/3/21 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Log4j输出格式控制--log4j的PatternLayout参数含义 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

做項目被log4j的輸出格式化參數搞煩了,索性把API的相關部分大致翻譯一下,原文參見http://logging.apache.org/log4j/docs/api/org/apache/log4j/PatternLayout.html
?

?

參數說明例子

%c

列出logger名字空間的全稱,如果加上{<層數>}表示列出從最內層算起的指定層數的名字空間

log4j配置文件參數舉例

輸出顯示媒介

假設當前logger名字空間是"a.b.c"
%ca.b.c
%c{2}b.c
%20c(若名字空間長度小于20,則左邊用空格填充)
%-20c(若名字空間長度小于20,則右邊用空格填充)
%.30c(若名字空間長度超過30,截去多余字符)
%20.30c(若名字空間長度小于20,則左邊用空格填充;若名字空間長度超過30,截去多余字符)
%-20.30c(若名字空間長度小于20,則右邊用空格填充;若名字空間長度超過30,截去多余字符)

%C

列出調用logger的類的全名(包含包路徑)假設當前類是"org.apache.xyz.SomeClass"
%Corg.apache.xyz.SomeClass
%C{1}SomeClass

%d

顯示日志記錄時間,{<日期格式>}使用ISO8601定義的日期格式%d{yyyy/MM/dd HH:mm:ss,SSS}2005/10/12 22:23:30,117
%d{ABSOLUTE}22:23:30,117
%d{DATE}12 Oct 2005 22:23:30,117
%d{ISO8601}2005-10-12 22:23:30,117

%F

顯示調用logger的源文件名%FMyClass.java

%l

輸出日志事件的發生位置,包括類目名、發生的線程,以及在代碼中的行數%lMyClass.main(MyClass.java:129)

%L

顯示調用logger的代碼行%L129

%m

顯示輸出消息%mThis is a message for debug.

%M

顯示調用logger的方法名%Mmain

%n

當前平臺下的換行符%nWindows平臺下表示rn
UNIX平臺下表示n

%p

顯示該條日志的優先級%pINFO

%r

顯示從程序啟動時到記錄該條日志時已經經過的毫秒數%r1215

%t

輸出產生該日志事件的線程名%tMyClass

%x

按NDC(Nested Diagnostic Context,線程堆棧)順序輸出日志假設某程序調用順序是MyApp調用com.foo.Bar
%c %x - %m%nMyApp - Call com.foo.Bar.
com.foo.Bar - Log in Bar
MyApp - Return to MyApp.

%X

按MDC(Mapped Diagnostic Context,線程映射表)輸出日志。通常用于多個客戶端連接同一臺服務器,方便服務器區分是那個客戶端訪問留下來的日志。%X{5}(記錄代號為5的客戶端的日志)

%%

顯示一個百分號%%%

?

列了這么多,舉幾個實際的例子吧,比如log4j.properties的內容為:

#log4j config
log4j.rootLogger=DEBUG,OUTPUT

log4j.appender.OUTPUT.layout=org.apache.log4j.PatternLayout
log4j.appender.OUTPUT.layout.ConversionPattern=%d{DATE} %-4r [%t] %-5p %c %x - %m%n
……

?

那么一個可能的輸出是:

12 Oct 2005 22:23:30,117 0 [main] INFO MyApp - Entering application.
……
12 Oct 2005 22:23:30,162 45 [main] INFO MyApp - Exiting application.

from:http://blog.gceclub.sun.com.cn/index.php?op=ViewArticle&articleId=734&blogId=6

https://blog.csdn.net/guoquanyou/article/details/5689652

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的Log4j输出格式控制--log4j的PatternLayout参数含义的全部內容,希望文章能夠幫你解決所遇到的問題。

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