繁体   English   中英

如何在slf4j中使用Log4j2中的格式化消息

[英]How to use formatted message in Log4j2 with slf4j

在slf4j后面使用Log4j2时,是否可以使用String.format的语法格式化日志消息?

看来标准的MessageFactoryParameterizedMessageFactory ,它仅支持{}

您不能像使用Log4j API那样在每个Logger的基础上更改MessageFactory。 但是,可以通过将log4j2.messageFactory设置为要使用的MessageFactory类名称来更改默认的MessageFactory。 您可以将其指定为系统属性,也可以在名为log4j2.component.properties的文件中定义该属性,该文件位于类路径中。

我建议您可能要考虑使用FormattedMessageFactory,因为它支持String.format模式,MessageFormat模式和ParameterizedMessage模式(尽管不在同一条消息中)。

您不能在不访问本机记录器的情况下执行此操作,但是最终这将很麻烦并且用处不大。 如果您真的想这样做,请参阅此答案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM