Is it possible to reference system environment variables (as opposed to Java system properties) in a log4j xml configuration file?
I'd like to be able to do something like:
<level value="${env.LOG_LEVEL}" />
and have it get that from the system environment variables, so I can avoid having to pass in so many things with -D parameters.
This syntax is documented only in log4j 2.X so make sure you are using the correct version. It does not work on the 1.X versions.
<Appenders>
<File name="file" fileName="${env:LOG_PATH}">
<PatternLayout>
<Pattern>%d %p %c{1.} [%t] %m %ex%n</Pattern>
</PatternLayout>
</File>
</Appenders>