【问题标题】:Logstash config, “if message contains…”Logstash 配置,“如果消息包含……”
【发布时间】:2019-12-11 01:17:27
【问题描述】:

所以,让我们假设我的日志行的一部分看起来像这样:

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 logstash syslog


    【解决方案1】:

    检查以下配置,

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

    【讨论】:

    • 是的,这很完美,为大家的帮助干杯!
    【解决方案2】:

    我认为你只需要纠正一点。试试这个

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-18
      • 2012-08-01
      • 2021-10-28
      • 2014-11-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多