一、轉換符
用於定義輸出的內容
轉換符 | 說明 |
c{length} lo{length} logger{length} |
輸出源記錄事件的 logger 名 參數length指定縮短 logger 名的規則,類名永遠不省略;爲0表示只顯示類名,非0包名段最小一個字符 |
d{pattern} date{pattern} |
輸出記錄事件的日期 語法與java.text.SimpleDateFormat 的格式兼容 |
L line |
輸出執行記錄請求的行號 |
M method |
輸出執行記錄請求的方法名 |
le level |
輸出記錄事件的級別 |
t thread |
輸出產生記錄事件的線程名 |
ex{length} exception{length} throwable{length} |
輸出與記錄事件相關聯的堆棧跟蹤 默認輸出全部堆棧跟蹤;short打印第一行;full打印全部,>0指定打印行數 |
xEx{length} xException{length} xThrowable{length} |
與ex|exception|throwable一樣,輸出與記錄事件相關聯的堆棧跟蹤,但是多了jar包的信息 沒有顯示指定異常轉換符時,PatternLayout將自動以此作爲最末端的轉換符 |
nopex nopexception |
表示不輸出任何堆棧跟蹤 可以覆蓋PatternLayout默認設置異常轉換符的行爲 |
二、格式符
1、符號
符號 | 說明 | |||||
% | 標識符,用於修飾格式轉換符;作爲文本使用需要轉義 | |||||
- | 減號,左對齊標誌;接輸出的最少字符個數的十進制數,小於則右填充空格;不帶符號則右對齊 | |||||
. | 點號,最大寬度修飾符;接輸出的最大字符個數的十進制數,超出則從前面截斷字符;%.20thread | |||||
() | 圓括號,編組標記;可以將多個子模式進行編組,然後對這個編組應用格式化指令;成對的圓括號作爲文本使用需要轉義 |
2、應用
格式符 | 對齊 | 最小寬度 | 最大寬度 | 備註 |
%20logger | 右 | 20 | 無 | 如果 logger 名少於 20 個字符則左填充空格 |
%-20logger | 左 | 20 | 無 | 如果 logger 名少於 20 個字符則右填充空格 |
%.30logger | 無 | 無 | 30 | 如果 logger 名多於 30 個字符則從開頭截斷 |
%.-30logger | 無 | 無 | 30 | 如果 logger 名多於 30 個字符則從末尾截斷 |
%20.30logger | 右 | 20 | 30 | 如果 logger 名少於 20 個字符則左填充空格,如果多於 30 個字符則從開頭截斷 |
%-20.30logger | 左 | 20 | 30 | 如果 logger 名少於 20 個字符則右填充空格,如果多於 30 個字符則從開頭截斷 |
三、示例
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %5level [%15.15thread] %-40.40(%logger{36}:%line) : %msg %n</Pattern>