elasticsearch,kibana,logstash-grok,logstash-configuration,Rest,elasticsearch,Kibana,Logstash Grok,Logstash Configuration" /> elasticsearch,kibana,logstash-grok,logstash-configuration,Rest,elasticsearch,Kibana,Logstash Grok,Logstash Configuration" />

提取restapi';他藏在木屋里

提取restapi';他藏在木屋里,rest,elasticsearch,kibana,logstash-grok,logstash-configuration,Rest,elasticsearch,Kibana,Logstash Grok,Logstash Configuration,我有这种圆木 21.4.1.2---[28/Dec/2016:12:18:40+0000]“获取a/b/c/d/e/f HTTP/1.1“200 984072”Mozilla/5.0(Windows NT 10.0;WOW64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/55.0.2883.87 Safari/537.36”0.104 0.103。 现在,我应该如何使用grok模式提取这个? 我也不知道字段的数量,即RESTAPI也可以是a/b/c,也可以是a/

我有这种圆木 21.4.1.2---[28/Dec/2016:12:18:40+0000]“获取a/b/c/d/e/f HTTP/1.1“200 984072”Mozilla/5.0(Windows NT 10.0;WOW64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/55.0.2883.87 Safari/537.36”0.104 0.103。 现在,我应该如何使用grok模式提取这个?
我也不知道字段的数量,即RESTAPI也可以是a/b/c,也可以是a/b/c/d/e/f/g。我应该如何处理它,以便我可以在kibana按a、b或c分组

如果有已知的深度,可以将URL字段重新搜索到这些字段中

如果有一个任意深度,变异分裂可以生成一个数组,但它们没有用处


csv{}过滤器如何,它可以以“/”作为分隔符,并将生成一组名为“column1”、“column2”等的字段?

有一个%{greedData:value}grok模板,您可以使用该模板提取API路径部分,从中可以在“/”上拆分。调试grok模式时,此工具非常有用

因此,首先:

%{IP:clientip} \- \- \[%{NOTSPACE:date} \+%{INT}\] \"%{WORD:action} %{GREEDYDATA:api} %{WORD:protocol}/%{NUMBER:protocolNum}\" %{NUMBER:status} %{NUMBER} %{QUOTEDSTRING} %{NUMBER} %{NUMBER}
这将为您提供api字段中的api路径


或者,我们正在开发Moesif,这是一个API调试和分析工具(),根据您的需要,它可能会对您有所帮助。(完全公开,我是首席执行官)

这个答案可能会有帮助:感谢@Val为您提供的时间,但您发布的问题链接是当有查询参数时,但在我的情况下,它是url ex的一部分:-facebook.com/user1,facebook.com/user2,我想将facebook.com作为一个字段,用户作为另一个字段。唯一的问题是url可以有多个部分,比如a/b/c。