我有这种日志 21.4.1.2 - - [28/Dec/2016:12:18:40 +0000]“GET 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模式来提取这个? 我不知道也没有字段,也就是说rest api也可以是a/b/c和a/b/c/d/e/f/g。我应该如何处理它,以便我可以用a,b或c以kibana分组。什么是正确的方式来提取其余api在logstash
1
A
回答
1
如果存在已知深度,则可以将URL字段重新注册到这些字段中。
如果存在任意深度,mutate-split可以创建它们的数组,但它们不会有用。
csv {}过滤器,它可能采取“/”作为分隔符,并会产生一堆称为“column1”,“column2”等字段?
0
有一个%{GREEDYDATA:value} grok模板,您可以使用它来提取API路径部分,从那里您可以分割“/”。在调试grok模式http://grokdebug.herokuapp.com/时,此工具非常有用。
所以下手:
%{IP:clientip} \- \- \[%{NOTSPACE:date} \+%{INT}\] \"%{WORD:action} %{GREEDYDATA:api} %{WORD:protocol}/%{NUMBER:protocolNum}\" %{NUMBER:status} %{NUMBER} %{QUOTEDSTRING} %{NUMBER} %{NUMBER}
,这将给你在API领域的API路径。
或者,我们正在研究Moesif,它是一个API调试和分析工具(https://www.moesif.com/features),它可能对您有所帮助,具体取决于您的需求。 (完全披露,我是首席执行官)
相关问题
- 1. 确认向Web API提交的正确方法是什么?
- 2. C++ API - 什么是正确的方法
- 3. 在Python中提取正则表达式匹配的正确方法是什么?
- 4. 什么是正确的方式来释放锁在objective-c
- 5. 什么是正确的方法来把对象提升:: property_tree?
- 6. C++ Inlining - 什么是“正确”的方式
- 7. 什么是正确或正确的方法来读取HTTP上的RFC?
- 8. 什么是MVVM正确的方式来处理“插入”
- 9. 什么是正确的方式来改变角js文本?
- 10. 什么是正确的方式来管理多个Ajax请求?
- 11. 什么是正确的方式来访问JBPM6过程变量
- 12. 什么是正确的方式来重置/初始化InfiniteLoader
- 13. 什么是正确的方式来使用MVC和Laravel
- 14. 什么是正确的方式来调用计时器ElapsedEventHandler
- 15. 什么是正确的方式来包装[NSString stringWithFormat:]?
- 16. 什么是正确的方式来配置GLM
- 17. 什么是正确的方式来传递值从PHP到r
- 18. 什么是“正确”的方式来隔离控制依赖
- 19. 什么是正确的方式来使用win32inet.WinHttpGetProxyForUrl
- 20. JSON响应与jQuery - 什么是正确的方式来处理?
- 21. 正确的方式来“拉”xml到API?
- 22. 什么是正确的正则表达式来提取HREF ID下面的HTML JMeter的正则表达式
- 23. 什么是*正确*的方式来取消CSS中的行为属性?
- 24. 什么是正确的方式来获取网站的所有列表
- 25. 正确的方式来获得URL的Django的REST框架的其余参数
- 26. 什么是正确的api用于酶
- 27. 这是一个正确的方式来使用获取在PHP
- 28. logstash输入和输出的正确配置是什么?
- 29. 什么是从html行中提取href的正确正则表达式? (Java)
- 30. 什么是“正确”的方式来存储联系人的ID在Android
此答案可能有所帮助:http://stackoverflow.com/questions/37605189/how-to-get-url-path-using-logstash-on-elasticsearch/37606224#37606224 – Val
感谢@Val你的时间,但你发布的问题链接是当有查询参数,但在我的情况下,它是url的一部分例如: - facebook.com/user1,facebook.com/user2,我想抓住脸书.com作为一个字段,用户作为其他字段。只有扭曲的是,可以有像a/b/c这样的url的多个部分。 – agrawal1084