Logstash 判断字段是否存在或者其值为false或null

在Logstash中,if条件语句无法区分字段不存在与字段为false或null的情况。为解决此问题,示例代码展示了如何通过mutate过滤器添加新字段,并基于新字段的存在性进行后续处理。如果字段added_field不存在,它将被添加并赋值,然后在输出阶段检查该字段是否存在来决定是否执行相应操作。
摘要由CSDN通过智能技术生成

You can check for the existence of a specific field, but there’s currently no way to differentiate between a field that doesn’t exist versus a field that’s simply false. The expression if [foo] returns false when:

  • [foo] doesn’t exist in the event,
  • [foo] exists in the event, but is false, or
  • [foo] exists in the event, but is null
filter {
	if ![added_field] {
		mutate {
			add_field => {
				"added_field" => "added_field_value"
			}
		}
	}
}

output {	
	if [added_field] {
		stdout {
			codec => rubydebug
		}
	}
}

Logstash conditionals

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值