我如何在 ElasticSearch 中的单个 URI 中执行多个搜索查询?

How can i do a multiple search query within a single URI in ElasticSearch?

我正在尝试通过从 Postman 发送 GET http 调用来获得索引的结果,方法是针对日期范围和我手动添加的字段 ("log_type"),

所以现在我能够得到结果,当我单独查询时,例如:

日期范围:http://localhost:9200/dialog_test/_search?q=timestamp:[2016-08-05+TO+2016-08-06]

log_type: http://localhost:9200/dialog_test/_search?q=log_type:GetProvisioning%20SUCCESS

在上面的url中(log_type),GetProvisioning Success是log_type。

所以我想知道的是,我怎样才能将它们组合成一个查询以识别在特定日期范围内和特定 log_type 之间的结果是什么?

如有任何帮助,我们将不胜感激

您可以对 query strings 使用 ANDOR 布尔连词。在您的情况下,您可以执行以下操作:

curl http://localhost:9200/dialog_test/_search?q=timestamp:[2016-08-05+TO+2016-08-06]+AND+log_type:GetProvisioning+SUCCESS

此外,您可以使用源查询字符串参数直接在 URL 中传递正文。例如:

http://localhost:9200/my_index/_search?source={"query": {"match_all": {}},"size": "1","sort": [{"@timestamp": {"order": "desc"}}]}