[
https://issues.apache.org/jira/browse/LOG4J2-1243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Veit Guna updated LOG4J2-1243:
------------------------------
Description:
I'm using log4j 2.5 in a REST service.
There I would like to use the placeholder substitution to allow configuration
of the log location.
I tried this:
{code:xml}
<Properties>
<!-- sets the path for log4j logs:
1. check whether java system property myapp.logs is set. If not:
2. check whether the OS environment variable MYAPP_LOGS is set. If not:
3. use logs dir in the current directory
-->
<Property name="logsPath">${sys:mypapp.logs:-${env:MYAPP_LOGS:-logs}}</Property>
</Properties>
{code}
This seems to work quite well with the exception, if myapp.logs is set, the
path ends with "}". So if I set the system property "-Dmyapp.logs=foobar" it
creates the directory "foobar}" and puts the logs into that. For the ENV
substitution it works. It also works when NO placeholder nesting is performed.
So I guess the problem has something todo with that.
See:
http://mail-archives.apache.org/mod_mbox/logging-log4j-user/201601.mbox/browser
Thanks
Veit
was:
I'm using log4j 2.5 in a REST service.
There I would like to use the placeholder substitution to allow configuration
of the log location.
I tried this:
{code:xml}
<Properties>
<!-- sets the path for log4j logs:
1. check whether java system property myapp.logs is set. If not:
2. check whether the OS environment variable MYAPP_LOGS is set. If not:
3. use logs dir in the current directory
-->
<Property name="logsPath">${sys:mypapp.logs:-${env:MYAPP_LOGS:-logs}}</Property>
</Properties>
{code}
This seems to work quite well with the exception, if myapp.logs is set, the
path ends with "}". So if I set the system property "-Dmyapp.logs=foobar" it
creates the directory "foobar}" and puts the logs into that. For the ENV
substitution it works. It also works when NO placeholder nesting is performed.
So I guess the problem has something todo with that.
Thanks
Veit
> Faulty placeholder substitution in config xml
> ---------------------------------------------
>
> Key: LOG4J2-1243
> URL: https://issues.apache.org/jira/browse/LOG4J2-1243
> Project: Log4j 2
> Issue Type: Bug
> Components: Lookups
> Affects Versions: 2.5
> Environment: JDK 8
> Reporter: Veit Guna
>
> I'm using log4j 2.5 in a REST service.
> There I would like to use the placeholder substitution to allow configuration
> of the log location.
> I tried this:
> {code:xml}
> <Properties>
> <!-- sets the path for log4j logs:
> 1. check whether java system property myapp.logs is set. If not:
> 2. check whether the OS environment variable MYAPP_LOGS is set. If not:
> 3. use logs dir in the current directory
> -->
> <Property
> name="logsPath">${sys:mypapp.logs:-${env:MYAPP_LOGS:-logs}}</Property>
> </Properties>
> {code}
> This seems to work quite well with the exception, if myapp.logs is set, the
> path ends with "}". So if I set the system property "-Dmyapp.logs=foobar" it
> creates the directory "foobar}" and puts the logs into that. For the ENV
> substitution it works. It also works when NO placeholder nesting is
> performed. So I guess the problem has something todo with that.
> See:
> http://mail-archives.apache.org/mod_mbox/logging-log4j-user/201601.mbox/browser
> Thanks
> Veit
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]