【发布时间】:2018-04-24 01:13:09
【问题描述】:
我正在使用 Sping Boot 1.5.7。该应用程序提供 API Restful。 我有一个过滤器,我在其中使用用户名和事务 ID 设置 MDC。
MDC.put("user", authentication.getPrincipal().toString());
MDC.put("trans-id",authentication.getTokenId());
我希望每个请求都有一个 MDC 映射,而不是 MDC 数据在不同请求之间共享。
你能帮帮我吗?谢谢。
更新:
每一行下面的日志都是一个http请求:
2017-11-10 21:34:52.867 | user=USER, trans-id=c28f4b68-b5f3-4b5c-9bb5-f18ba9d1cd7d, session-id=daaddaadda | INFO 976 - [tp1005246661-89] i.e.h.controller.IsAliveController : /isAlive WSC |
2017-11-10 21:34:59.551 | user=USER, trans-id=4a0eaec1-184a-4587-8fce-ab013ad6539b, session-id=daaddaadda | INFO 976 - [tp1005246661-89] i.e.h.controller.IsAliveController : /isAlive public |
在第二个请求中,我只设置了 trans-id,而不是在 MDC 映射中,在第一个请求中设置了 session-id 和用户。
【问题讨论】:
标签: java spring-boot logging logback mdc