У меня есть файл log4j2 yml, в котором переменные среды используются для указания места ведения журнала. Соответствующая часть этого файла конфигурации выглядит следующим образом
RollingFile:
name: logfile
PatternLayout:
pattern: "<%-5p>[%d{yyyy-MM-dd HH:mm:ss.SSS}]{%t}%c(%L): %m%n"
fileName: ${env:ENV_VAR1}${env:ENV_VAR2}.log
filePattern: ${env:ENV_VAR1}${env:ENV_VAR2}.%d{yyyy-MM-dd}.log
Эта конфигурация работает на Windows и делает именно то, что я хочу. В linux я добавил переменные окружения в / etc / environment как root, чтобы эти переменные окружения были доступны глобально. Однако когда я запускаю сервер Tomcat, файл журнала создается в / as $ {env: ENV_VAR1} $ {env: ENV_VAR2} .log. Когда я запускаю printenv, я вижу все переменные окружения. Почему log4j2 не может их найти?