弹性查询字符串不等于

时间:2021-06-17 05:03:05

标签: elasticsearch kibana kibana-7

我们在 kibana 中有一些要求,我们需要排除一些请求 url,如“/ibe/document/*”并获取其他请求。

尝试的选项

我们已经尝试了以下选项

  1. { "query": { "bool" : { "must_not" : { "term" : { "request.keyword" : "/ibe/document/.*" } } } } }
  2. NOT ( "request.keyword" : "/ibe/document/.*")
  3. !("request.keyword" : "/ibe/document/.*")

但即使我们使用上述任何查询,在过滤后的数据中,我们仍然得到带有“request.keyword”:“/ibe/document/”的记录。 您能否提供有关查询的建议以避免出现“request.keyword”:“/ibe/document/.

我尝试使用 "request.keyword" : "/ibe/document/." 和 "request.keyword" : "/ibe/document/" 运行上述所有内容。但是每次都在获取请求“request.keyword”:“/ibe/document/*”对应的记录

1 个答案:

答案 0 :(得分:1)

您可以使用下面的 wildcard query 排除所有从 /ibe/document/ 开始的结果

{
  "query": {
    "bool": {
      "must_not": {
        "wildcard": {
          "request.keyword": "/ibe/document/*"
        }
      }
    }
  }
}
相关问题