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:
<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>
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
Attachments
Issue Links
- is duplicated by
-
LOG4J2-1589 Value nesting during property substitution
-
- Closed
-