如打印每个请求的 请求id,通过ThreadContext实现。
Log4j2中包含一个类:ThreadContext(实际上是一个本地线程)
ThreadContext.put("id", "123123");
然后在log4j2.xml配置文件中配置:
<Console name="console" target="SYSTEM_OUT" follow="true">
<PatternLayout pattern="[LOGID:%X{id}] %d{yyyy/MM/dd HH:mm:ss} [%p] %c{1} (%F:%L) %msg%n" />
<ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY" />
</Console>
!注意:ThreadContext只在当前线程中生效。
本文介绍了如何在Log4j2中利用ThreadContext来记录每个请求的请求ID。通过ThreadContext.put()方法设置ID,并在log4j2.xml配置文件中配置PatternLayout以显示ID。ThreadContext的使用确保了ID只在当前线程内有效,有助于日志跟踪和问题排查。
4950

被折叠的 条评论
为什么被折叠?



