Log4j2不会在Linux上解析环境变量

时间:2019-01-11 19:25:42

标签: linux log4j environment-variables log4j2

我有一个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服务器时,正在/中以$ {env:ENV_VAR1} $ {env:ENV_VAR2} .log创建日志文件。当我运行printenv时,我可以看到所有的环境变量都在那里。为什么log4j2找不到它们?

0 个答案:

没有答案