elasticsearch - 在Elasticsearch中,有什么方法可以使用不包含查询结果的索引作为统计比较背景?

标签 elasticsearch aggregation logstash

我可以找到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/

相关文章:

elasticsearch - 编写Elasticsearch 2.1脚本没有这样的属性:doc

ssl - Logstash 到 Elasticsearch 批量请求,SSL 对等端错误关闭 - Manticore::ClientProtocolException logstash

elasticsearch - 无需动态脚本的术语频率总和脚本

django - NgramField根据查询词的子字符串返回结果

elasticsearch - 跨字段搜索,每个字段中有多个完整和不完整的短语

aggregation - 数组中对象的 ArangoDB 聚合计数

elasticsearch - ElasticSearch Scroll API 内部是如何工作的

c++ - 基于聚合的架构问题

elasticsearch - 从 Google Dataflow 流作业保存到 Elasticsearch

logging - 使用logstash(ELK)轮询日志