You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Veit Guna (JIRA)" <ji...@apache.org> on 2016/01/04 23:26:39 UTC
[jira] [Created] (LOG4J2-1243) Faulty placeholder substitution in
config xml
Veit Guna created LOG4J2-1243:
---------------------------------
Summary: 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.
Thanks
Veit
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org