java - 如何在日志文本上将 OrderId 显示为 Log4j 模式布局
问题描述
我无法让日志消息以正确的方式显示。我正在使用这个 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();
}
解决方案
推荐阅读
- armeria - 如何调用多个服务?
- python - 带有存储触发器的谷歌云函数 python37 不会部署,也不会提供任何日志
- ios - 为什么在sceneView中physicsBody比视觉模型大?
- java - 什么是 RSA 加密中的“连接到系统的设备无法运行”错误?
- angular - 角度路由器:命名的出口似乎不适用于相对路由,也不适用于延迟加载的模块
- android - 通过 Android Studio 发送 shell 命令或类似于正在运行的 android 应用程序的东西
- r - 无法下载有关 rsconnect 的报告
- java - java 8将多个键映射到相同的值
- java - 这样声明的数组在哪里 int[][][] arr = { { { 1, 2 }, { 3, 4 } }, { { 5, 6 }, { 7, 8 } } }; 在java中得到存储?
- c++ - 什么是 C++17 中 std::unary_function 的等效替代品?