使用if语句的Logstash grok过滤器

时间:2017-07-28 14:04:35

标签: logstash logstash-grok

我无法使用if语句和grok过滤器来过滤我的日志数据。

我的代码示例:

.conf文件

input {
    stdin { }
}

filter {
    grok {
        patterns_dir => ["./patterns"]

        match => {"message" => "%{API_CALL}"}
    }
    if "_grokparsefailure" not in [tags] {
        grok {
            add_tag => ["External API call"]
        }
    }
}

output {
    stdout { codec => rubydebug }
}

自定义模式

API_CALL called

如果我运行此配置并提供called的输入字符串,那么我将获得grokparsefailure。但是,如果我摆脱if语句块并再次运行它,我将有一个成功的匹配。

感谢所有帮助。

0 个答案:

没有答案