我在logstash中使用了一个过滤器。我想更改logstash中一个动态字段的值。我在过滤器中使用了以下代码:
if [state_ls_keyvalue] == "False" {
mutate{
add_field => {"%{field_ls_keyvalue}" => "%{enrich_column}"}
}
} else {
mutate{
remove_field => ["%{field_ls_keyvalue}"]
}
mutate{
add_field => {"%{field_ls_keyvalue}" => "%{enrich_column}"}
}
}
但是不行,我该怎么办?
2条答案
按热度按时间v1uwarro1#
remove_field和add_field都打印字段名。
将产生
如果你没有遇到这种情况,那么它就意味着[validation]的条件测试评估为false。
vmpqdwk32#
这个问题与ElasticSearch中域***的***类型有关,我们可以用***Map***来处理,并改变它。
仅使用
add_field
,将新字段的值追加到旧字段中。使用
remove_field
,然后使用add_field
,将新字段的值替换为旧字段的值。