java - 如何在 logback 中打印 mdc 值
问题描述
我没有在 logback 中获得 mdc 值
你能帮我么
Java代码:
String traceId = MDC.get(getJlgConfiguration().getTraceId());
String sessionId = MDC.get(getJlgConfiguration().getSessionId());
Logback.xml
<configuration scan="true" scanPeriod="60" debug="true">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern>
%d{yyyy-MM-dd HH:mm:ss} - %class{0}.%M %L, ole-session-id:%mdc{ole-session-id:-NONE}, jlg-trace-id:%mdc{jlg-trace-id:-NONE} - %msg%n
</Pattern>
</encoder>
<root level="info">
<appender-ref ref="CONSOLE"/>
</root>
</configuration>
解决方案
您必须使用 %X 而不是 %mdc
%d{yyyy-MM-dd HH:mm:ss} - %class{0}.%M %L, ole-session-id:%X{ole-session-id:-NONE}, jlg-trace-id:%X{jlg-trace-id:-NONE} - %msg%n
查看文档以获取更多信息 http://logback.qos.ch/manual/mdc.html
推荐阅读
- loops - 在 lapply 循环中保存输出
- c# - 是否可以使用 Nest 将查询列表传递给 ElasicSearch?
- cors - Cloudflare Worker CORS 阻止 POST 请求,即使 'Access-Control-Allow-Origin':'*'
- python - 我可以从 Pydantic 获取传入的额外字段吗?
- c - cc:错误:this_example.o:没有这样的文件或目录
- java - 如何在实体侦听器中注入依赖项?
- python - Python 函数:感知是否直接从 shell 调用或作为评估项的一部分
- bash - macOS:在单独的会话中安排一次重启
- python - 关于解决 deep voice3 GitHub 项目中的一个错误(ERROR: Failed building wheel for lws)
- reactjs - React 中缺少 Cookie,但 Django 中没有