logger.info("{}: {}", key)
,其中记录器消息中 {}
占位符的数量与日志调用的其他实参的数量不匹配。
使用检查选项可以指定 SLF4J 使用哪个实现。
如果选择自动检查,则在类路径中搜索 org.apache.logging.slf4j.Log4jLogger
。
如果找到此文件或选择是,将不为 SLFJ4 API 报告带有异常类型的最后一个形参具有占位符的情况。
例如:
//如果选中“是”选项,则不会报告此情况
log.error("For id {}: {}", "1", new RuntimeException());
在这种情况下,将使用 'toString()' 打印 'new RuntimeException()'(不会打印其堆栈跟踪):
For id 1: java.lang.RuntimeException
否则,它将高亮显示,因为未使用最后一个占位符:
For id 1: {}
java.lang.RuntimeException: null
否选项可用于在占位符用于异常时始终高亮显示此类情况,即使 org.apache.logging.slf4j.Log4jLogger
用作后端也是如此。