Spring實現(xiàn)Logback日志模板設(shè)置動態(tài)參數(shù)功能
版權(quán)說明: 本文由博主keep丶原創(chuàng),轉(zhuǎn)載請保留此塊內(nèi)容在文首。
原文地址: https://blog.csdn.net/qq_38688267/article/details/144842327
背景
多個單體服務(wù)間存在少量交互,需實現(xiàn)簡易鏈路追蹤功能如下圖。設(shè)計鏈路標(biāo)識traceId,實現(xiàn)Logback日志模板設(shè)置成動態(tài)參數(shù)輸出到日志中。
設(shè)計日志格式
如下圖,在日志輸出中增加traceId列,且該列值如線程值一樣動態(tài)改變。
實現(xiàn)
配置動態(tài)取值
配置動態(tài)參數(shù)獲取類
import ch.qos.logback.core.PropertyDefinerBase; /** * Logback日志動態(tài)參數(shù)traceId的值獲取類 * <br/> * 在{@code logback-spring.xml}中使用 * @author zeng.zf */ public class TraceLogConversion extends PropertyDefinerBase { @Override public String getPropertyValue() { return TraceLocalCache.get(); } }
配置映射
logback-spring.xml
日志格式化pattern值如下,pattern值中定義了
traceId
動態(tài)參數(shù)
%green(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}})|%highlight(${LOG_LEVEL_PATTERN:-%5p})|%t|%magenta(%X{traceId})|%cyan(%logger{100}.%M\\(%L\\)):%m%n
至此,即可實現(xiàn)動態(tài)參數(shù)。
相關(guān)資料
Spring實現(xiàn)輸出帶動態(tài)標(biāo)簽的日志
Spring實現(xiàn)通過工具類統(tǒng)一輸出日志(不改變?nèi)罩绢愋畔?
到此這篇關(guān)于Spring實現(xiàn)Logback日志模板設(shè)置動態(tài)參數(shù)的文章就介紹到這了,更多相關(guān)Spring Logback動態(tài)參數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringBoot整合日志功能(slf4j+logback)詳解(最新推薦)
- 如何使用@Slf4j和logback-spring.xml搭建日志框架
- Springboot Logback日志多文件輸出方式(按日期和大小分割)
- Springboot MDC+logback實現(xiàn)日志追蹤的方法
- SpringBoot啟動時如何通過啟動參數(shù)指定logback的位置
- SpringBoot項目中使用@Scheduled讀取動態(tài)參數(shù)
- spring mvc中的@PathVariable動態(tài)參數(shù)詳解
- spring mvc中的@PathVariable獲得請求url中的動態(tài)參數(shù)
- 關(guān)于Spring?Cloud實現(xiàn)日志管理模塊
相關(guān)文章
MybatisPlus使用Mybatis的XML的動態(tài)SQL的功能實現(xiàn)多表查詢
本文主要介紹了MybatisPlus使用Mybatis的XML的動態(tài)SQL的功能實現(xiàn)多表查詢,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-11-11java實現(xiàn)切圖并且判斷圖片是不是純色/彩色圖片
本篇文章主要介紹了java實現(xiàn)切圖并且判斷圖片是否是純色/彩色圖片,具有一定的參考價值,有興趣的可以了解一下2017-08-08Eclipse中查看android工程代碼出現(xiàn)"android.jar has no source attachment
這篇文章主要介紹了Eclipse中查看android工程代碼出現(xiàn)"android.jar has no source attachment"的解決方案,需要的朋友可以參考下2016-05-05淺談java中Math.random()與java.util.random()的區(qū)別
下面小編就為大家?guī)硪黄獪\談java中Math.random()與java.util.random()的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-09-09java 利用反射獲取內(nèi)部類靜態(tài)成員變量的值操作
這篇文章主要介紹了java 利用反射獲取內(nèi)部類靜態(tài)成員變量的值操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12