我可以找到Elasticsearch的ificant_terms 聚合所使用的条件。
我的意思是,用于统计比较的背景集是从中收集结果的一个或多个索引。
但是,我想将每天创建的Logstash索引用于重要术语聚合。
这是我面临的问题。
如果我使用包含以下过滤器的过滤查询,则会忽略除“logstash-2014.12.10”之外的所有logstash索引。
{
"range":{
"@timestamp":{
"from":"2014-12-10T15:00:00.000+00:00",
"to":"2014-12-10T18:00:00.000+00:00"
}
}
}
有什么方法可以使用Logstash 每天创建的所有索引作为ificant_terms聚合的背景文档,如下所示?
"aggregations": {
"agg_by_remote_ip": {
"significant_terms": {
"field": "remote_ip"
}
}
}
提前致谢。
最佳答案
首先尝试对多个索引运行查询(注意GET请求的logstash-*
部分):
GET /logstash-*/_search
{
"query": {
"range": {
"@timestamp": {
"from": "2014-12-10T15:00:00.000+00:00",
"to": "2014-12-10T18:00:00.000+00:00"
}
}
},
"aggregations": {
"agg_by_remote_ip": {
"significant_terms": {
"field": "remote_ip"
}
}
}
}
关于elasticsearch - 在Elasticsearch中,有什么方法可以使用不包含查询结果的索引作为统计比较背景?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27914736/