在龙目岛 slf4j 中使用 MDC



我正在开发一个大量使用龙目岛Slf4j的应用程序。我想将一些标识符附加到日志中。MDC 是为 Slf4j 解决这个问题的,但我想将其与龙目岛 slf4j 一起使用。我在网上搜索,但找不到任何资源。 有什么方法或资源会有所帮助吗?

这需要一些配置,但你需要做什么。

在pom中放一些依赖.xml

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>

配置日志.xml

<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%X{x} %msg%n</pattern>
</encoder>
</appender>

<root level="trace">
<appender-ref ref="STDOUT" />
</root>
</configuration>

为任何类添加一些魔法

static {
SLF4JBridgeHandler.removeHandlersForRootLogger();
SLF4JBridgeHandler.install();
}

并全力以赴

@Log
public class App {    
public static void main(String[] args) throws IOException {
MDC.put("x", "MDC var");
log.info("log message");
}
}

运行并享受您的日志:

MDC var log message

特别感谢这个答案

最新更新