ES按時間聚合、嵌套聚合

// POST index name/document name/_search格式
POST xxx-*/doc/_search
{
   "query": {
            "bool": {
                "must": [{
                    "range": {
                       // 指明需要聚合的時間範圍,從1582537515000到1585043115000
                        "@timestamp": {
                            "gte": 1582537515000,
                            "lte": 1585043115000
                        }
                    }
                }]
            }
        },
  "aggs": {
    "group_by_date": {
      "date_histogram": {
      // 分組關鍵字
        "field": "@timestamp",
        // 按天分組,還可以按年、月、日、時、分、秒分組
        "interval": "day",
        // 東八區
        "time_zone":"+08:00",
        // 時間的格式化
        "format": "yyyy-MM-dd"
      },
      // 根據需要,做一個去重操作,也可以不做
      "aggs": {
        "agg_token": {
          "cardinality": {
          // 去重的關鍵字
            "field": "token.keyword"
          }
        }
      }
    }
  }
}

用到了ES的基本查詢語法、聚合語法、嵌套聚合.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章