logstash conf基于正则表达式删除行

时间:2017-07-26 12:53:04

标签: logstash logstash-grok

我一直在尝试过滤掉那些我不感兴趣的类别的日志消息。

我的日志行看起来像这样......

2017-07-26 16:27:04,135 [[api-vehicle-registration-v1-114.0.0].apiHttpListenerConfig.worker.01] DEBUG esb.api-vehicle-registration-v1.get-registration.http.response - transactionID=6d5bec10-71cb-11e7-84ba-e2c437d94258 creationTime=2017-07-26T16:26:58.514+10:00 txnState=END timeTaken=5385 payloadType=JSON payload=[{"totalRecords":1}]

我想过滤那些类别与esb不匹配的日志行。*

使用我的grok下面的logstash.conf可以工作,但是drop bit不是。有人可以帮我解决这个问题吗?

感谢

filter {
  grok {
    match => [ "message", "%{TIMESTAMP_ISO8601:timestamp}\s+%{DATA:thread}\s+%{LOGLEVEL:loglevel}\s+%{JAVACLASS:category}\s+-\s+%{GREEDYDATA:msgbody}" ]
  }

  if [category] =~ /esb/ {
        drop { }
  }

  kv {
    # remove leading '[' and trailing ']'
    #include_brackets => true
    source => "msgbody"
  }

}

0 个答案:

没有答案