SeasonPanPan commented on issue #2363: URL: https://github.com/apache/logging-log4j2/issues/2363#issuecomment-1992757662
Also, I found an **incompatibility** issue, from version 2.19.0 to 2.23.1, for example: ```java @Test public void testLog() { log.info("first param is {}, second param is {}", "Log4j2"); } ``` It works ok with v2.19.0, but throw an exception with v2.23.1. Although the standard way to write is to provide 2 parameters, in fact, there are many developers who write code that is not standardized, but it used to work fine. ``` 2024-03-12T23:55:03.063Z main ERROR Unable to format msg: first param is {}, second param is {} java.lang.IllegalArgumentException: found 2 argument placeholders, but provided 1 for pattern `first param is {}, second param is {}` at org.apache.logging.log4j.message.ParameterFormatter.formatMessage(ParameterFormatter.java:248) at org.apache.logging.log4j.message.ParameterizedMessage.formatTo(ParameterizedMessage.java:282) at org.apache.logging.log4j.core.pattern.MessagePatternConverter$SimpleMessagePatternConverter.format(MessagePatternConverter.java:120) at org.apache.logging.log4j.core.pattern.PatternFormatter.format(PatternFormatter.java:44) at org.apache.logging.log4j.core.layout.PatternLayout$PatternFormatterPatternSerializer.toSerializable(PatternLayout.java:397) at org.apache.logging.log4j.core.layout.PatternLayout.toText(PatternLayout.java:252) at org.apache.logging.log4j.core.layout.PatternLayout.encode(PatternLayout.java:238) at org.apache.logging.log4j.core.layout.PatternLayout.encode(PatternLayout.java:58) at org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender.directEncodeEvent(AbstractOutputStreamAppender.java:227) at org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender.tryAppend(AbstractOutputStreamAppender.java:220) at org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender.append(AbstractOutputStreamAppender.java:211) at org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:160) at org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:133) at org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:124) at org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:88) at org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:705) at org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:663) at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:639) at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:575) at org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:92) at org.apache.logging.log4j.core.Logger.log(Logger.java:169) at org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2906) at org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2859) at org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2841) at org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2637) at org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:2402) at org.apache.logging.slf4j.Log4jLogger.info(Log4jLogger.java:184) ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org