java - 如何使用 SLF4J 和 Log4j 在日志消息中包含标记

标签 java log4j log4j2 slf4j

我通过以下方式在 SLF4J 和 Log4j 中使用标记

final Marker marker = MarkerFactory.getMarker("boom");
logger.info(marker, "BLAH BLAH: {}", stuff);

如何在输出的日志消息中包含标记。例如,我希望上面的代码输出如下内容:

INFO - (boom): BLAH BLAH: something

当前标记未显示

INFO: BLAH BLAH: something

我一直在尝试找到一种在 log4j.properties 中配置此功能的方法,但无法找到有关显示标记的任何信息。

最佳答案

这取决于您尝试用作日志记录后端的 log4j 版本。经典的Log4j 1.2.x不支持Markers,但似乎通过SLF4J支持MDC。 Log4j 2.x 似乎确实原生支持标记。您可以使用%marker在布局格式说明符中。

关于java - 如何使用 SLF4J 和 Log4j 在日志消息中包含标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58141375/

相关文章:

java - Spring 元注解

email - Log4j 电子邮件错误 "Cannot find java.home ??"

java - Log4J:警告找不到记录器错误的附加程序

java - 在 Java EE 应用程序中找不到 Log4j.xml 抛出文件

java - 为什么 JMSAppender 使用同步发送?我们可以改变这一点吗?

java - PreBuiltTransportClient 写入消息 : ERROR StatusLogger No log4j2 configuration file found

Java 小程序未正确绘制

java - 二分查找中的最大键比较 (1+log(n)) 为何不是 log(n)?

spring-boot - 未启用脚本支持 - Spring boot 2.7.5

java - Netbeans 教程 : Creating a graphical client for twitter