Logstash grok过滤器不匹配

时间:2016-01-06 16:38:00

标签: logstash double-quotes logstash-grok

我在使用logstash过滤我的日志时遇到了一些麻烦,因为我的模式只适用于调试器

FilterString

127.0.0.1 - - [06/Jan/2016:15:43:41 +0000] "GET /index.php/banner/ajax/load/?sections=&_=1452095017076 HTTP/1.1" 200 74 "https://magento2-dev.argento.io/index.php/" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36" "-"

我的模式

%{IPORHOST:clientip} %{NGUSER:ident} %{NGUSER:auth} \[%{HTTPDATE:timestamp}\] "%{WORD:verb} %{URIPATHPARAM:request} HTTP/%{NUMBER:httpversion}" %{NUMBER:response} (?:%{NUMBER:bytes}|-) (?:"(?:%{URI:referrer}|-)"|%{QS:referrer}) %{QS:agent}

当我在http://grokdebug.herokuapp.com/中使用它时,一切都很好,但是当我在配置中使用它时会中断。

在logstash conf

filter {
  grok {
    match => [ 'message', '%{IPORHOST:clientip} %{NGUSER:ident} %{NGUSER:auth} \[%{HTTPDATE:timestamp}\] "%{WORD:verb} %{URIPATHPARAM:request} HTTP/%{NUMBER:httpversion}" %{NUMBER:response} (?:%{NUMBER:bytes}|-) (?:"(?:%{URI:referrer}|-)"|%{QS:referrer}) %{QS:agent}' ]
  }
}

我强烈相信这与引号或斜线有关。 我尝试用单引号,但这里没有运气。

感谢您帮助我

0 个答案:

没有答案