【问题标题】:How to use environment variables in org.ops4j.pax.logging.cfg?如何在 org.ops4j.pax.logging.cfg 中使用环境变量?
【发布时间】:2017-05-19 15:11:39
【问题描述】:

我在 Felix 容器中使用 Pax Logging,因为使用动态加载的属性文件 org.ops4j.pax.logging.cfg 配置记录器的工具看起来很吸引人。

但是,我无法使用sister question about Log4j 中描述的环境查找。我注意到 Pax Logging 复制了一大块 Log4j。是否也支持环境查找?

我期望工作的例子是:

log4j.appender.rolling = org.apache.log4j.DailyZipRollingFileAppender
log4j.appender.rolling.file = log/equinox-${sys:USERNAME}.log

我希望创建文件equinox-myuser.log,而不是创建equinox-.log。因此,似乎某些引擎尝试解析变量,但失败了。测试是在 Windows 下启动的,所以变量 USERNAME 存在。

【问题讨论】:

    标签: java logging environment-variables pax


    【解决方案1】:

    Ops4j 使用 env: 前缀而不是 sys: 前缀。

    工作示例应如下所示:

    log4j.appender.rolling.file = log/equinox-${env:USERNAME}.log
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-05
      • 2021-11-17
      • 2016-04-11
      • 2014-01-01
      • 2014-12-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多