Ara*_*nd 6 multithreading log4j logback log4j2 spring-boot
我有一个 Spring boot 应用程序,并且使用 logback 作为日志记录框架。目前我想显示线程 ID 而不是线程名称。我知道如果您使用%tid.
我可以使用 logback 实现相同的效果还是应该实现自定义线程 ID 提取器?
我正在扩展PatternLayout类并创建一个具有线程 id 及其值的映射。我如何在我的logback.xml
这可以通过自定义来完成ClassicConverter,例如:
import ch.qos.logback.classic.pattern.ClassicConverter;
import ch.qos.logback.classic.spi.ILoggingEvent;
public class ThreadIdConverter extends ClassicConverter {
@Override
public String convert(final ILoggingEvent e) {
return String.valueOf(Thread.currentThread().getId());
}
}
Run Code Online (Sandbox Code Playgroud)
然后,在你的logback.xml:
<configuration>
<conversionRule conversionWord="threadId" converterClass="ThreadIdConverter"/>
...
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%threadId %msg%n</pattern>
</encoder>
</appender>
...
</configuration>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12456 次 |
| 最近记录: |