[
https://issues.apache.org/jira/browse/LOG4J2-2032?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16353741#comment-16353741
]
ASF GitHub Bot commented on LOG4J2-2032:
----------------------------------------
GitHub user kshchepanovskyi opened a pull request:
https://github.com/apache/logging-log4j2/pull/147
LOG4J2-2032 Curly braces in parameters should not be treated as placeholders
https://issues.apache.org/jira/browse/LOG4J2-2032
When logging event parameter contains two consecutive opening and
closing curly braces - for example {} in the middle of parameter,
they should not be treated as a placeholder.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/kshchepanovskyi/logging-log4j2
fix/double-placeholder-processing
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/logging-log4j2/pull/147.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #147
----
commit b68f797ea01e669fc4b4c630cd7a96e14f4cc6ef
Author: Kostiantyn Shchepanovskyi <kostiantyn.shchepanovskyi@...>
Date: 2018-02-06T10:20:35Z
LOG4J2-2032 Fix SslConfigurationTest running on Windows behind proxy
Corporate proxies might not allow connection to external resources.
commit 3814afe7d81ed065b1ecb3e593547c32d4536ddd
Author: Kostiantyn Shchepanovskyi <kostiantyn.shchepanovskyi@...>
Date: 2018-02-06T11:26:00Z
LOG4J2-2032 Curly braces in parameters should not be treated as placeholders
When logging event parameter contains two consecutive opening and
closing curly braces - for example {} in the middle of parameter,
they should not be treated as a placeholder.
----
> Curly braces in parameters are treated as placeholders
> ------------------------------------------------------
>
> Key: LOG4J2-2032
> URL: https://issues.apache.org/jira/browse/LOG4J2-2032
> Project: Log4j 2
> Issue Type: Bug
> Components: Appenders, Layouts
> Affects Versions: 2.8.2, 2.9.0, 2.10.0
> Environment: Tested on Windows and Linux.
> java version "1.8.0_144"
> Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
> Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
> Reporter: Kostiantyn Shchepanovskyi
> Priority: Major
>
> When logging event parameter contains two consecutive opening and closing
> curly braces - {{for example {} in the middle of parameter}}, they are
> treated as a placeholder and are substituted by provided parameters starting
> from index zero.
> I suspect that it affects only async loggers.
> My configuration:
> {code:xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <Configuration>
> <Appenders>
> <Console name="console" target="SYSTEM_OUT">
> <PatternLayout>
> <pattern>%level{length=1} %date{MMdd-HHmm:ss,SSS} %logger{1.}
> %message %X [%thread]%n
> </pattern>
> </PatternLayout>
> </Console>
> <Async name="asyncFile">
> <AppenderRef ref="console"/>
> </Async>
> </Appenders>
> <Loggers>
> <Root level="info">
> <AppenderRef ref="asyncFile"/>
> </Root>
> </Loggers>
> </Configuration>
> {code}
> Test:
> {code:java}
> package com.playtech.live.platform.core.service;
> import org.junit.jupiter.api.Test;
> import org.slf4j.Logger;
> import org.slf4j.LoggerFactory;
> public class Log4jCurlyBracesInParameterTest {
> private static final Logger LOGGER =
> LoggerFactory.getLogger(Log4jCurlyBracesInParameterTest.class);
> @Test
> void messageWithCurlyBracesInParameter() {
> LOGGER.info("Text containing curly braces: {}", "Curly{}");
> LOGGER.info("Normal text: {}, text containing curly braces {}",
> "Normal", "Curly{}");
> }
> }
> {code}
> Expected output:
> {code}
> I 0905-1731:01,018 c.p.l.p.c.s.Log4jCurlyBracesInParameterTest Text
> containing curly braces: Curly{} {} [main]
> I 0905-1731:01,033 c.p.l.p.c.s.Log4jCurlyBracesInParameterTest Normal text:
> Normal, text containing curly braces Curly{} {} [main]
> {code}
> Actual output:
> {code}
> I 0905-1731:01,018 c.p.l.p.c.s.Log4jCurlyBracesInParameterTest Text
> containing curly braces: CurlyCurly{} {} [main]
> I 0905-1731:01,033 c.p.l.p.c.s.Log4jCurlyBracesInParameterTest Normal text:
> Normal, text containing curly braces CurlyNormal {} [main]
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)