日志存储的 GROK 解析失败



我正在尝试使用默认mongo文件中的logstash解析mongo日志.log。

这是我的过滤器配置:

filter {      
  grok {          
    match => ["message", "%{MONGO_SLOWQUERY}"]       
   }
}

我对此越来越grokparsefailure

谁能帮我解决这个问题。

您使用

的宏与以下类型的日志匹配:

MONGO_LOG %{SYSLOGTIMESTAMP:timestamp} [%{WORD:component}] %{GREEDYDATA:message}
MONGO_QUERY { (?<={ ).*(?= } ntoreturn:) }
MONGO_SLOWQUERY %{WORD} %{MONGO_WORDDASH:database}.%{MONGO_WORDDASH:collection} %{WORD}: %{MONGO_QUERY:query} %{WORD}:%{NONNEGINT:ntoreturn} %{WORD}:%{NONNEGINT:ntoskip} %{WORD}:%{NONNEGINT:nscanned}.*nreturned:%{NONNEGINT:nreturned}..+ (?<duration>[0-9]+)ms
MONGO_WORDDASH b[w-]+b
MONGO3_SEVERITY w
MONGO3_COMPONENT %{WORD}|-
MONGO3_LOG %{TIMESTAMP_ISO8601:timestamp} %{MONGO3_SEVERITY:severity} %{MONGO3_COMPONENT:component}%{SPACE}(?:[%{DATA:context}])? %{GREEDYDATA:message}

根据:logstash-patterns-core

可能您的信息不符合模式。您可以尝试您的消息是否合适,使用 Grok 调试器:Grok 调试器

问候

最新更新