如果空的话,请建议如何删除数组字段?我试过下面的配置:
if [tags] == [] {
mutate {
remove_field => ["tags"]
}
}
But getting logstash exception:
[2018-03-01T15:07:56,000][FATAL][logstash.runner ] The given configuration is invalid. Reason: Failed to parse right-hand side of conditional [str]pipeline:31:8:[tags] == []
答案 0 :(得分:3)
我不知道如何从ruby过滤器内部删除字段,所以当tags
数组为空时,我正在设置另一个字段并使用知道何时删除字段{{1} }。
tags
答案 1 :(得分:0)
这个对我有用:
ruby {
code => "if event.get('tags').length == 0 then event.remove('tags') end"
}
答案 2 :(得分:0)
检查是否为非null以及数组中是否至少有一个元素
if [tags] and [tags][0] {
mutate {
remove_field => ["tags"]
}
}
在Logstash 7.1上测试