1

我想知道是否可以从记录器调用中打印先前添加的 MDC 值?

例子:

MDC.put("user","tom")

log.info("Hello %X{user}");

而不是将其添加到布局模式中。

原因是我在其他地方调用 MDC 并在逻辑结束时记录,但我想有条件地记录不同的值。我知道解决方法可能是不同的附加程序。

4

1 回答 1

0

由于 MDC 本质上是一个映射,因此您始终可以使用 .get() 来检索以前存储在其中的值:

MDC.put("user", "tom");

log.info("Hello, {}", MDC.get("user"));
于 2015-04-22T11:02:10.393 回答