【问题标题】:Using container log4j.properties file not able to read from ENV file which has passed while container startup using env.list file使用容器 log4j.properties 文件无法从使用 env.list 文件启动容器时已通过的 ENV 文件中读取
【发布时间】:2022-12-09 01:53:08
【问题描述】:

一旦我使用 env.list 启动容器,这个 env.list 文件包含的值为: ROOTCATEGORY=调试,控制台

但是一旦我使用 log4j.properties 开始 wildfly,使用下面的语法一个接一个。没有 他们能够从 ENV 变量(ROOTCATEGORY)中获取值。

我尝试了以下语法,但没有一个替换 log4j.properties 的值。我有 一个一个地尝试,但不是全部或多个一起尝试。

log4j.rootCategory=${env.ROOTCATEGORY}
log4j.rootCategory="${env.ROOTCATEGORY}"
log4j.rootCategory=${env:ROOTCATEGORY}
log4j.rootCategory="${env:ROOTCATEGORY}"
log4j.rootCategory=${sys.ROOTCATEGORY}
log4j.rootCategory="${sys.ROOTCATEGORY}"
log4j.rootCategory=${sys:ROOTCATEGORY}
log4j.rootCategory="${sys:ROOTCATEGORY}"
log4j.rootCategory=$ROOTCATEGORY
log4j.rootCategory="$ROOTCATEGORY"
log4j.rootCategory=${ROOTCATEGORY}
log4j.rootCategory="${ROOTCATEGORY}"
log4j.rootCategory=$"{ROOTCATEGORY}"
log4j.rootCategory=$"{env.ROOTCATEGORY}"
log4j.rootCategory=$"{env:ROOTCATEGORY}"
log4j.rootCategory=$"{sys.ROOTCATEGORY}"
log4j.rootCategory=$"{sys:ROOTCATEGORY}"

请建议如何使用容器模式设置并检索内部 ROOTCATEGORY 的值 log4j.properties 文件。

log4j.properties 文件无法读取容器内的环境变量。

【问题讨论】:

    标签: environment-variables containers log4j wildfly


    【解决方案1】:

    您可以将其设置为系统属性并以这种方式进行。在 CLI 中你可以这样做:

    /system-property=log4j.rootCategory:add(value=${env.ROOTCATEGORY})
    

    然后在你的log4j.properties 中你只有:

    log4j.rootCategory=${log4j.rootCategory}
    

    【讨论】:

      猜你喜欢
      • 2019-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-08
      • 2011-12-27
      • 2014-12-01
      • 2021-05-21
      相关资源
      最近更新 更多