logback高階特性使用

2022-08-01 02:18:13 字數 832 閱讀 9214

非同步記錄日誌

注意:該功能需要高版本才能支援,如1.0.11。

屬性名型別

描述queuesize

intblockingqueue的最大容量,預設情況下,大小為256。

discardingthreshold

int預設情況下,當blockingqueue還有20%容量,他將丟棄trace、debug和info級別的event,只保留warn和error級別的event。為了保持所有的events,設定該值為0。

includecallerdata

boolean

提取呼叫者資料的代價是相當昂貴的。為了提公升效能,預設情況下,當event被加入到queue時,event關聯的呼叫者資料不會被提取。預設情況下,只有"cheap"的資料,如執行緒名。

預設情況下,event queue配置最大容量為256個events。如果佇列被填滿,應用程式執行緒被阻止記錄新的events,直到工作執行緒有機會來**乙個或多個events。因此佇列深度需要根據業務場景進行相應的測試,做出相應的更改,以達到較好的效能。

下面給出乙個使用的配置示例:

[html]view plain

copy

/opt/log/test.%d.logfilenamepattern>  

30maxhistory>  

%d [%thread] %-5level %logger -%msg%npattern>  

layout>  

0discardingthreshold>  

512queuesize>  

root>  

logback高階特性使用 一

logback支援類似於佔位符的變數替換功能,即如果輸出的msg裡面帶有 符號且括號中間不帶其他字元,那麼logback在構造loggingevent的時候,會用messageformat類來格式化msg,將 替換成具體的引數值。示例如下 logger.info it s ok.hi 則輸出結果如下...

logback高階特性使用 非同步記錄日誌

注意 該功能需要高版本才能支援,如1.0.11。當logging 屬性名型別描述 queuesize intblockingqueue的最大容量,預設情況下,大小為256。discardingthreshold int預設情況下,當blockingqueue還有20 容量,他將丟棄trace deb...

Logback高階用法

在日常的生產中,尤其是在微服務盛行的今天,我們的服務很可能是作為分布式應用上的乙個點,會接受來自不同客戶端的請求,那麼在服務的為每行日誌標記出來自的客戶端呢?本篇我們通過介紹logback的高階用法,來為大家實現。日誌擴充套件 在分布式應用的今天,如何通過日誌把客戶端請求的不同應用的日誌串起來,展示...