【问题标题】:In logstash, How to filter logs by json key and value?在logstash中,如何通过json键和值过滤日志?
【发布时间】:2014-05-21 17:47:22
【问题描述】:

目前我需要忽略一些登录logstash。

我的logstash输入如下:

 input {
    udp {
            port => 5001
            format => "json"
            type => "udp"
    }
 }

像 {"key1":"value1", "key2":"value2"} 这样的日志将发送到端口 5001

我喜欢删除所有带有 "key1":"value1" 的日志,我该如何实现呢?

我试过了

filter {
    grep {
            match => { "key1" => "value1" }
            negate => true
    }
}

它不起作用。

【问题讨论】:

    标签: json logging logstash


    【解决方案1】:

    使用if 语法来做到这一点:

    filter {
      if [key1] == "value1" {
         drop {}
      }
    }
    

    【讨论】:

    • 它不起作用。 key1 只能在 input{} 中设置吗?
    • 我相信您需要将输入更改为编解码器 => json 而不是格式
    • 我用logstash 1.4对其进行了测试,并将codec => json与上面的sn-p一起放在配置文件中
    猜你喜欢
    • 1970-01-01
    • 2018-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多