如何在YAML中为Log4J 2“OnStartupTriggeringPolicy”指定一个空元素

时间:2015-08-25 16:13:25

标签: yaml log4j2

如何在YAML中提供任何空元素?

我正在使用“OnStartupTriggerPolicy”配置lo4j2触发器。

 <Policies>
       <OnStartupTriggeringPolicy />
 </Policies>

Log4J不接受这个。

 Policies:
        OnStartupTriggeringPolicy:
        SizeBasedTriggeringPolicy:
           size: "20 MB"

错误策略包含无效的元素或属性“OnStartupTriggeringPolicy”

3 个答案:

答案 0 :(得分:3)

尝试:

OnStartupTriggeringPolicy: {} 

答案 1 :(得分:0)

如果您将值保留为空,则YAML将采用null值。这与没有价值不一样。您应该指定空字符串:

Policies:
  OnStartupTriggeringPolicy: ""
  SizeBasedTriggeringPolicy:
    size: "20 MB"

答案 2 :(得分:0)

但是我们可以通过像这样放置打开和关闭大括号来定义空元素 -

OnStartupTriggeringPolicy: {}
TimeBasedTriggeringPolicy: {}

但是最好指定这个元素的属性。 OnStartupTriggeringPolicy 有一个属性名称“minSize”,它计算启动时文件的最小大小,如果满足则创建一个新的翻转文件 -

OnStartupTriggeringPolicy:
        minSize: 5120 // this is long value of file size 

TimeBasedTriggeringPolicy 类似 -

TimeBasedTriggeringPolicy:
        interval: 1
        modulate: true
        maxRandomDelay: 0