【发布时间】:2020-07-19 20:15:17
【问题描述】:
我想编写一个查询来查找包含名称和数字 +/- 5 的日志事件。由于我不知道此日志事件的确切结构,我无法在单独的 int 字段中提取数字.
我的查询目前看起来像这样。
baseQuery = {
"query": {
"bool": {
"must": [
{"match": {"sim_session" : "session_id"}},
{"match": {"event" : "putFilenameHere"}},
{"bool": {
"should": [
{"match_phrase": {"event" : "Name"}},
#Search for the line in the event text
{"match": {"event" : "42"}}
],
"minimum_should_match" : 2
}}
]
}
}
}
所以我可以找到包含“名称”和数字“42”(被视为字符串)的事件,但我想找到包含“名称”和 37 或 38 或 39 或 40 或41 或 42 或 43 或 44 或 45 或 46 或 47。 有没有更聪明的方法来实现这一点,然后用不同的数字执行相同的查询 11 次?
执行此查询的脚本是用 python 编写的。
谢谢
【问题讨论】:
标签: python elasticsearch elastic-stack