【发布时间】:2021-03-09 06:56:32
【问题描述】:
我需要在 Kibana 日志中搜索具有特定内容的字段。该字段是“消息”,如下所示:
11.111.72.58 - - [26/Nov/2020:08:44:23 +0000] "GET /images/image.jpg HTTP/1.1" 200 123456 "https://website.com/questionnaire/uuid/结果" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.14 (KHTML, like Gecko) Version/14.0.1 Safari/605.1.14" "5.158.163.231"
此字段包含 URI,例如此处“https://website.com/questionnaire/uuid/result”。如何在该字段中搜索特定 URI? 我需要获取所有日志,其中“消息”字段包含“https://website.com/questionnaire/someUUID*/result” 或者 URI 正好是“https://website.com/”
我已经尝试过 Lucene:
消息:/https://.+/result/
没有找到
消息:https.*\结果
找到开头带有“https:”的URI,但也返回结尾不带“result”的URI
消息:“https://website.com/questionnaire”和消息:“结果”
这行得通,但如果“结果”与 URI 无关,但只会在“消息”字段的末尾单独存在,这也行得通。我需要一些东西,它会真正查询“”之间的那些 URI。 稍后我需要用 Kibana 可视化每个 URI 的请求数量。所以我认为我需要使用 Lucene 或 Query DSL。 有什么想法吗?
【问题讨论】:
标签: regex elasticsearch lucene kibana