logstash 如何禁用 logstash-plain.log 中的 "Dissector mapping, pattern not found" 错误

logstash how to disable "Dissector mapping, pattern not found" error in logstash-plain.log

我有两种格式的行日志。

aaa [bbb] [ccc] ddd eee
aaa [bbb] fff ggg [ccc] ddd eee

我已成功使用下一个 logstash 过滤器配置来解析它们。

filter {
 dissect {
    mapping => { "message" => "%{field1} [%{field2}] [%{field3}] %{message}" }
  }
  if "_dissectfailure" in [tags] {
    dissect {
       remove_tag => [ "_dissectfailure" ]
       mapping => { "message" => "%{field1} [%{field2}] %{stuff} [%{field3}] %{message}" }
    }
  }
}

一切都按预期工作 - 没有 "fff ggg" 的行与第一个解剖匹配,带有 "fff ggg" 的行与第一个解剖不匹配 -> 获得标签“_dissectfailure”并成功与第二个解剖匹配(我看到该字段 "stuff" 出现在事件中并且事件没有“_dissectfailure”标签)

但是 logstash 在 logstash-plain.log 中抱怨第一次剖析:

[2019-09-04T20:14:06,901][WARN ][org.logstash.dissect.Dissector] Dissector mapping, pattern not found {"field"=>"message", "pattern"=>"%{field1} [%{field2}] [%{field3}] %{message}", "event"=>{"input"=>{"type"=>"log"}, "@timestamp"=>2019-09-04T17:13:50.269Z, "tags"=>["beats_input_codec_plain_applied", "_dissectfailure"], "message"=>"aaa [bbb] fff ggg [ccc] ddd eee", }}

请帮忙去掉这些无意义的警告,如果根本没有解剖匹配就写这样的警告?

我知道它很旧,但对于遇到此问题的其他人:

    curl -XPUT 'localhost:9600/_node/logging?pretty' -H 'Content-Type:
    application/json' -d'
    {
        "logger.org.logstash.dissect.Dissector" : "ERROR"
    }
    '