根据logstash / grok documentation,可以使用以下匹配模式找到一个URI

#Example log file

55.3.244.1 GET /index.html 15824 0.043


#Example Grok match pattern
%{IP:client} %{WORD:method} %{URIPATHPARAM:request} %{NUMBER:bytes} %{NUMBER:duration}

我正在尝试获取封装在双引号中的URI,根据grokdebug.herokuap.com,这是无效的。
#My log file
Started POST "/main/builder.git/git-upload-pack" for 127.0.0.1 at 2014-02-13 22:37:10 +0000

#My grok match patterns
%{WORD:started} %{WORD:method} %{URIPATHPARAM:gitrepo}

# 0 results

如何找到带引号的URI的匹配模式?

最佳答案

尝试使用http://grokdebug.herokuapp.com/discover查找字符串过滤器。这个应用程序非常有用,尤其是在使用和测试长时间的动态日志消息时。

还可以考虑使用http://grokdebug.herokuapp.com/来测试其他字符串集的模式。

关于regex - grok-如何获取URIPATHPARAM?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21769151/

10-10 18:15