什么是日志MDC?一句话简单解释MDC
发布时间:2026-10-06 | 浏览:1
官方文档: Chapter 8: Mapped Diagnostic Context 为什么要写这篇文章呢?因为目前互联网上全是从官方文档里机器翻译然后转载的。但实际上我只是想知道什么是MDC,一句话解释一下MDC就可以了。 以下内容是我本人对MDC的简单总结
MDC的字面意思:Mapped Diagnostic Context 映射诊断上下文
通俗的说就是在打印日志的时候定义一个占位符 %X{MDC键名称} ,然后在你自己写的代码中使用 MDC.put("MDC键名称", "内容") 方法给占位符赋值,在最终打印的时候,日志框架就会自动带上你指定的内容。(有点像字符串拼接)
MDC可以理解为一个map,只不过这个map的作用域是单个线程,且线程安全。
日志配置文件logback.xml(对于如何使用日志的配置文件,我这里就不解释了)。这里重点注意: <pattern>%X{custom.info} - %m%n</pattern> 。我们使用 %X{MDC键名称} 这个占位符来定义内容显示的位置
这是MDC最简单的用法,如果想看更详细的可以去官方文档学习。