【发布时间】:2016-02-18 17:17:48
【问题描述】:
我正在尝试为 logstash 创建一个过滤器,该过滤器将为所有日志提供“通用”grok 过滤器,如果存在某些字段,那么我希望它执行不同的 grok。
我使用的第一个 grok 是
grok {
match => [
"message", "....%{NOTSPACE:name} %{GREEDYDATA:logcontent}"
]
}
这很好用。但如果“名称”字段是“foo”,我希望它能够过滤更多
if [name] == "foo" {
grok {
match => [
"message", ".....%{NOTSPACE:name} %{NOTSPACE:object1} %{NOTSPACE:object2}"
]
}
我尝试了这个选项,但它不起作用。 有什么想法吗?
【问题讨论】:
标签: elasticsearch logstash logstash-grok grok logstash-file