首页 > 解决方案 > 聚合后如何过滤?

问题描述

我试图在最高命中聚合之后进行过滤,以获取错误的第一个幻影是否在给定范围内,但我找不到方法。

我看到了一些关于桶选择器的东西,但无法让它工作

POST log-*/_search/
{
  "size": 100, 
  "aggs": {
        "group":{
            "terms": {
                "field": "errorID.keyword",
                "size": 100
            },
            "aggs": {
                  "group_docs": {
                    "top_hits": {
                        "size": 1,
                        "sort": [
                            {
                              "@timestamp": {
                                "order": "asc"
                              }
                            }
                        ]
                    }
                },
            }
         }
       }
    }
}

有了这个热门命中,我得到了一个具体的 errorID 的第一个幻影,因为我有许多具有相同 errorID 的文档,但我想要找到的是第一个幻影是否在给定的日期范围内。

我认为一个有效的解决方案是过滤聚合结果以检查它是否在范围内,但我不知道我该怎么做。

标签: elasticsearch

解决方案


推荐阅读