0

我无法让日志消息以正确的方式显示。我正在使用这个 Log4J 模式布局:

pattern="ORDERID : $${ctx:ORDERID} %msg%n"

我想看到如下输出:

ORDERID: 123 测试上下文

但这是我得到的输出:

ORDERID : ${ctx:ORDERID} 测试上下文

这是生成日志消息的代码:

@Test
public void testThreadContext() {
    ThreadContext.push("Message only");
    ThreadContext.push("int", 1);
    ThreadContext.push("int-long-string", 1, 2L, "3");
    ThreadContext.push("ORDERID", "123");
    logger.info("Test Context");
    ThreadContext.clearAll();
}
4

1 回答 1

0

我使用了 ThreadContext.put 而不是 ThreadContext.push。这是工作。

ThreadContext.put("ORDERID", "123"); 而不是 ThreadContext.push("ORDERID", "123");

结果日志文本 URL

在此处输入图像描述

于 2019-04-15T20:32:24.810 回答