我有这样的条件IF
:
if ([mesage] =~ /(CRITICAL|ERROR)/) {
add_field => { "priority" => "critical" }
} else {
add_field => { "priority" => "low" }
}
如何从字段中获取这些值?
我试过以下选项,但这没效果。
add_field => { "priorityMessages" => "CRITICAL|ERROR" }
if ([mesage] =~ /([priorityMessages])/) {
add_field => { "priority" => "critical" }
} else {
add_field => { "priority" => "low" }
}
答案 0 :(得分:0)
add_field需要是过滤器的一部分(并且仅在该过滤器存在时触发)。试试这个:
if [message] =~ /(CRITICAL|ERROR)/) {
mutate {
add_field => { "priority" => "critical" }
}
}
但更好的做法是使用grok从非结构化[message]字段中提取字段。