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

Reply via email to