我应该总是尽量避免grok解析错误吗?

时间:2017-03-29 21:42:17

标签: elasticsearch logstash elastic-stack

我的日志中有一个字段,我匹配为这样的IP地址:

grok {
  match => [ "field1", "(?:(?<field2>%{IP})|(%{IP}),\+)"]
}

有时候这个字段1是空白的,所以在文档中永远不会创建field2。

这很好,因为我不希望添加此字段,除非它是有效的IP地址。

但是当发生这种情况时,文档会被_grokparsefailure标记。这不好吗?这是否意味着我做错了什么,我应该避免_grokparsefailures。

1 个答案:

答案 0 :(得分:0)

所有_grokparsefailure是维护者的面包屑,表示某些grok规则可能需要更新。在性能方面,它对于像那个简短的规则没有任何意义。如果您真的不关心grok语句中的未命中,您可以告诉它以其他方式标记它(tag_on_failure => ["something"])。