前言
Slf4j + LogBack
的组合是最通用的方式。
关于 Slf4j
的介绍,请参考本博客http://ketao1989.github.io/posts/Java-slf4j-Introduce.html
有了日志之后,我们就可以追踪各种线上问题。但是,在分布式系统中,各种无关日志穿行其中,导致我们可能无法直接定位整个操作流程。因此,我们可能需要对一个用户的操作流程进行归类标记,比如使用线程+时间戳
,或者用户身份标识等;如此,我们可以从大量日志信息中grep出某个用户的操作流程,或者某个时间的流转记录。
因此,这就有了 Slf4j MDC
方法。
Slf4j MDC 介绍
MDC ( Mapped Diagnostic Contexts ),顾名思义,其目的是为了便于我们诊断线上问题而出现的方法工具类。虽然,Slf4j 是用来适配其他的日志具体实现包的,但是针对 MDC功能,目前只有logback 以及 log4j 支持,或者说由于该功能的重要性,slf4j 专门为logback系列包装接口提供外部调用(玩笑~:))。
logback 和 log4j 的作者为同一人,所以这里统称logback系列。
先来看看 MDC
… 阅读全文