Filter 日志存储配置&x201C;如果消息包含…”;

Filter 日志存储配置&x201C;如果消息包含…”;,filter,logstash,syslog,Filter,Logstash,Syslog,那么,假设我有一部分日志行,看起来像这样: Dec 11 13:59:17 172.00.1.00 NPF_OLT_LAB05: clear service affecting Alarm for ONT "100002" at 2019/12/11 13:59:17.28: "ONT Dying Gasp" 我必须创建一个过滤器,它可以做这样的事情 filter { if ([message]) =~ "NPF_OLT_LAB05"{ grok{ match =>

那么,假设我有一部分日志行,看起来像这样:

Dec 11 13:59:17 172.00.1.00 NPF_OLT_LAB05: clear service affecting Alarm for ONT "100002" at 2019/12/11 13:59:17.28: "ONT Dying Gasp"
我必须创建一个过滤器,它可以做这样的事情

filter {
  if ([message]) =~ "NPF_OLT_LAB05"{
   grok{
      match => { "message" => "%{SYSLOGBASE} %{WORD:Alarm_Severity} %{DATA:Message} %{QS:ONT_ID} %{DATA:Time} %{QS:ONT_Message}" }
   }
 }
}

这可能吗?

我想你只要稍微纠正一下就行了。试试这个

filter {
  if ([message]) =~ /NPF_OLT_LAB05/{

检查以下配置

filter {
  if "NPF_OLT_LAB05" in [message] {
   grok{
      match => { "message" => "%{SYSLOGBASE} %{WORD:Alarm_Severity} %{DATA:Message} %{QS:ONT_ID} %{DATA:Time} %{QS:ONT_Message}" }
   }
 }
}

是的,这很好,为大家的帮助干杯!