You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@logging.apache.org by "Jan Mosig (Jira)" <ji...@apache.org> on 2022/04/07 13:54:00 UTC
[jira] [Commented] (LOG4J2-3470) Expressions in property values are not expanded anymore
[ https://issues.apache.org/jira/browse/LOG4J2-3470?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17518894#comment-17518894 ]
Jan Mosig commented on LOG4J2-3470:
-----------------------------------
The application's configuration is this:
{code}
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Properties>
<Property name="thing:System" value="ABC" />
<Property name="thing:ApplicationName" value="@project.parent.artifactId@" />
<Property name="thing:ApplicationVersion" value="@project.version@" />
<Property name="thing:Environment" value="${env:ENVIRONMENT}" />
<Property name="thing:Instance" value="${env:HOSTNAME}" />
</Properties>
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<ThingJsonLayout />
</Console>
</Appenders>
<Loggers>
<!-- Root logger for everything that does not belong to the service (e.g. 3rd-party libraries). -->
<Root level="${env:LOG_LEVEL_ROOT:-WARN}">
<AppenderRef ref="console" />
</Root>
<!-- Logger for everything that belongs to the service (usually has lower log level). -->
<Logger name="my.fancy.project" level="${env:LOG_LEVEL_SERVICE:-INFO}" additivity="false">
<AppenderRef ref="console" />
</Logger>
<Logger name="my.fancy.project.springboot" level="debug" additivity="false">
<AppenderRef ref="console" />
</Logger>
</Loggers>
</Configuration>
{code}
As for the configuration within the cloud I don't really know. If you also need it, I could investigate.
> Expressions in property values are not expanded anymore
> -------------------------------------------------------
>
> Key: LOG4J2-3470
> URL: https://issues.apache.org/jira/browse/LOG4J2-3470
> Project: Log4j 2
> Issue Type: Bug
> Affects Versions: 2.17.2
> Environment: Running with / in:
> * Spring Boot 2.6.6
> * log4j 2.17.2
> * Docker / K8s on Amazon EKS
> * Java 11
> Reporter: Jan Mosig
> Priority: Major
>
> In our logging submodule we are using log4j2 properties with value expressions to do things, e. g.
> {code}
> <Property name="thing:Environment" value="${env:ENVIRONMENT}" />
> <Property name="thing:Instance" value="${env:HOSTNAME}" />
> {code}
> However, since we upgraded to 2.17.2, the expressions are not (always) expanded anymore, i. e. the log will contain {{environment:${env:ENVIRONMENT}}} rather than {{environment:my-fancy-env}}.
> The behavior is reproducible, however different applications behave differently, i. e. the same configuration yields different results (as in a race condition). The behavior is the same for the same config and application.
> Our current *workaround* is to downgrade to 2.17.1 for the time being.
> Is there maybe a connection to recently introduced raw values? Is this related to LOG4J2-3434?
--
This message was sent by Atlassian Jira
(v8.20.1#820001)