【问题标题】:log4j2 accessing env propertieslog4j2 访问环境属性
【发布时间】:2014-12-27 14:33:50
【问题描述】:

提到读取env属性的log4j2文档我们必须使用$${env:USERNAME}

我发现带有单个 $${env:USERNAME} 仍然有效。

有谁知道我们为什么要使用$$?!

【问题讨论】:

    标签: java logging configuration log4j log4j2


    【解决方案1】:

    来自http://logging.apache.org/log4j/2.x/manual/configuration.html 手册页:

    StrLookup 处理的一个有趣特性是,当一个变量 每次使用多个前导“$”字符声明引用 变量被解析,前导“$”被简单地删除。在里面 前面的例子中,“Routes”元素能够解析 运行时变量。为了允许这样做,前缀值被指定为 带有两个前导“$”字符的变量。当配置文件 首先处理第一个变量被简单地删除。因此,当 Routes 元素在运行时评估它是变量 声明 "${sd:type}" 导致事件被检查 StructuredDataMessage,如果存在,则其类型的值 属性用作路由键。并非所有元素都支持 在运行时解析变量。这样做的组件将专门 在他们的文档中指出这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-28
      • 2014-05-21
      • 2015-02-12
      • 1970-01-01
      • 2014-12-01
      • 2017-05-06
      • 2019-12-31
      • 1970-01-01
      相关资源
      最近更新 更多