当前位置: 首页 > news >正文

Spring实现Logback日志模板设置动态参数

版权说明: 本文由博主keep丶原创,转载请保留此块内容在文首。
原文地址: https://blog.csdn.net/qq_38688267/article/details/144842327

文章目录

    • 背景
    • 设计日志格式
    • 实现
      • 配置动态取值
      • logback-spring.xml
    • 相关博客

背景

  多个单体服务间存在少量交互,需实现简易链路追踪功能如下图。设计链路标识traceId,实现Logback日志模板设置成动态参数输出到日志中。
在这里插入图片描述

设计日志格式

  如下图,在日志输出中增加traceId列,且该列值如线程值一样动态改变。
在这里插入图片描述

实现

配置动态取值

  • 配置动态参数获取类

import ch.qos.logback.core.PropertyDefinerBase;/*** Logback日志动态参数traceId的值获取类* <br/>* 在{@code logback-spring.xml}中使用* @author zeng.zf*/
public class TraceLogConversion extends PropertyDefinerBase {@Overridepublic String getPropertyValue() {return TraceLocalCache.get();}
}
  • 配置映射
    在这里插入图片描述

logback-spring.xml

日志格式化pattern值如下,pattern值中定义了traceId动态参数

%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

至此,即可实现动态参数。

  

相关博客

  • Spring实现输出带动态标签的日志
http://www.lryc.cn/news/515547.html

相关文章:

  • 内部类 --- (寄生的哲学)
  • Python深度学习GRU、LSTM 、BiLSTM-CNN神经网络空气质量指数AQI时间序列预测及机器学习分析|数据分享...
  • JSP基础
  • 基于Springboot +Vue 在线考试管理系统
  • Node.js 函数
  • JVM学习指南(9)-JVM运行时数据区
  • 2025/1/4期末复习 密码学 按老师指点大纲复习
  • 关于嵌入式系统的知识课堂(二)
  • 基于ETAS工具的AutoConnect实现方案
  • BGP基础配置实验
  • 基于单片机的人体健康指标采集系统设计
  • Go语言性能优化-字符串格式化优化
  • UE5失真材质
  • SAP 01-初识AMDP(ABAP-Managed Database Procedure)
  • 关于视频审核,内容风控在“控”什么?
  • 5G NTN(七) 高层(1)
  • 专家混合(MoE)大语言模型:免费的嵌入模型新宠
  • 《柴油遗产-无耻时代》V98375官方版
  • 科技云报到:洞见2025年科技潮流,技术大融合开启“智算时代”
  • 【openwrt】OpenWrt 路由器的 802.1X 动态 VLAN
  • [coredump] 生成管理
  • CSS——5. 外部样式
  • 检查字符是否相同
  • casaos安装最新版homeassistant-arm
  • openwrt host方式编译ffmpeg尝试及问题分析
  • 【three.js】搭建环境
  • SQLite AND/OR 运算符
  • 《普通逻辑》学习记录——命题的判定与自然推理
  • 道可云人工智能元宇宙每日资讯|崂山区政务服务虚拟大厅启用
  • 高并发写利器-组提交,我的Spring组件实战