Closed kaybinwong closed 7 years ago
仅供参考,我们生产上是这么整合使用的。https://github.com/ofpay/logback-mdc-ttl
上面 @wuwen5 给的是 logback
的集成。
https://github.com/oldratlee/log4j2-ttl-thread-context-map
这个是log4j 2.6
的集成。
# log4j 2.8
的实现有些变化,要重新理一下才能使用。还没有去做。
不同版本 不同的log实现 的集成 可以参照 上面2个集成。 @kaybinwong
SLF
这个Facade上的集成之前看过没有做好。
如果可以搞定,就不需要各个log
实现去集成了。
@wuwen5 @kaybinwong 可以一起看看,如果搞定SLF
的集成,就直接放到TTL
中,太常用的需求了~ 😄 给个Pull Request
💓
@kaybinwong TTL
提供的是ThreadLocal
的传递,日志MDC
是要从日志来 集成 TTL
的。
即 从职责或是系统依赖上来说,是 日志 依赖 TTL
,不是反过来。
当然,如果能提供好 像SLF
这样的集成的实现,因为足够常用 通用 好用(也就是 集成的工作是收敛的,且有广泛的收益),TTL
项目应该主动把 把这个集成 实现掉,方便大家 直接使用。
slf4j
没想好怎么去集成, 未发布版的slf4j-1.8.0
版本支持spi
的方式加载logger
实现。
但是没想好怎么去替换MDCAdapter
实现中的context
,我的想法是需要保留日志框架自己的MDCAdapter
实现方式的基础上去解决context
的问题.
简单的验证了下 slf4j+logback的mdc,在多线程下是可以用的,
@shipengyan COOL~
我把 https://github.com/ofpay/logback-mdc-ttl 加到TTL的文档中,方便大家了解&使用。 @wuwen5 @shipengyan
我们使用logback+slf4j收集日志,但是目前2.1.0版本不支持向MDC传递数据?