如何将2个句点与ElasticSearch和Kibana进行比较?

问题描述 投票:2回答:1

我想比较两个时期的相同值,以便我可以编写一个计算百分比差异的脚本。我的数据如下:

{
"type": "Redemption",
"@timestamp": "2016-08-05T16:12:55.594909118+01:00",
"points": 1109,
"value": 5.545
}

我的查询如下所示:

{
    "aggs" : {
        "points_per_week" : {
            "date_histogram" : {
                "field" : "@timestamp",
                "interval" : "week",
                "format" : "yyyy-MM-dd"
            },
            "aggs": {
                "total_points": {
                    "sum": {
                        "field": "points"
                    }
                },
                "points_last_week": {
                  "date_histogram" : {
                      "field" : "@timestamp",
                      "interval" : "week",
                      "format" : "yyyy-MM-dd",
                      "offset":"-1w"
                  },
                  "aggs": {
                      "total_points": {
                          "sum": {
                              "field": "points"
                          }
                      }
                  }
                }

            }

        }
    }
}

但是,结果如下所示:

"points_per_week": {
         "buckets": [
            {
               "key_as_string": "2016-02-01",
               "key": 1454284800000,
               "doc_count": 8335,
               "total_points": {
                  "value": 12537515
               },
               "points_last_week": {
                  "buckets": [
                     {
                        "key_as_string": "2016-02-05",
                        "key": 1454630400000,
                        "doc_count": 8335,
                        "total_points": {
                           "value": 12537515
                        }
                     }
                  ]
               }
            },

它看起来好像是当前的一周,但不是最后一周......有没有办法做到这一点?

elasticsearch kibana
1个回答
1
投票

这是一个老问题,但万一有人会发现它像我一样它可以被https://www.elastic.co/guide/en/kibana/current/timelion-create.html Timelian和偏移功能所取代

.es(offset=-1h,index=metricbeat-*, timefield='@timestamp', metric='avg:system.cpu.user.pct').label('last hour'), .es(index=metricbeat-*, timefield='@timestamp', metric='avg:system.cpu.user.pct').label('current hour')

试着看看Timelion:Kibana https://www.elastic.co/blog/timelion-timeline的时间序列作曲家

© www.soinside.com 2019 - 2024. All rights reserved.