为减少数据传输,在保持数据结构清晰的前提下,我们对监控数据做了压缩处理。

API 返回的监控数据 sample:

[[1392072000, value], "NA", value, [500, value], value, ... ]

第一个数据总是会包括两项:[时间, 值]。

说明

其中时间是北京时间,即 UTC+8

后面的大部分数据都只有"值",其对应的时间则是 "前一时间 + step"。

如果遇到例子中 [500, value] 这种结构的数据,表示这个数据的`时间`是有自己的时间跨度的 ,这个跨度跟 step 无关,即 "时间 = 前一时间 + 时间跨度(此例中跨度是 500)"。

数据中偶尔会出现 NA,表示这一刻监控数据值无效。

将 sample 中每个数据都加上`时间`后(假设 step 为 5m,即 300s),得到:

[[1392072000, value], [1392072300, null], [1392072600, value], [1392073100, value], [1392073400, value], ... ]

还有要注意的是第一个数据中的`时间`并不一定等于请求 API 时的 start_time 参数, 它的确切含义为“第一个有效监控数据的时间”。例如一台刚启动几分钟的云服务器, 如果请求最近1小时的监控数据 ( start_time 为 1 小时前), 那么第一个有效数据的时间则是启动后的某个时间。