5.4 监控数据管理
5.4.1 查询监控数据
功能介绍
查询指定时间范围指定指标的指定粒度的监控数据,可以通过参数指定需要查询的数 据维度。
调试
您可以在API Explorer中调试该接口。
URI
GET /V1.0/{project_id}/metric-data?
namespace={namespace}&metric_name={metric_name}&dim.
{i}=key,value&from={from}&to={to}&period={period}&filter={filter}
● 参数说明
表5-78 参数说明
名称 是否必选 说明
project_id 是 项目ID。
获取方式请参见获取项目ID。
表5-79 查询检索参数
名称 是否必选 参数类型 说明
namespace 是 String 服务的命名空间,各服务命名空间请 参考支持监控的服务列表。
格式为service.item;service和item 必须是字符串,必须以字母开头,只 能包含0-9/a-z/A-Z/_,service.item 总长度最短为3,最大为32。
metric_name 是 String 指标名称,可通过查询指标列表获取 已有的告警规则的指标名。
from 是 String 查询数据起始时间,UNIX时间戳,
单位毫秒。建议from的值相对于当 前时间向前偏移至少1个周期。由于 聚合运算的过程是将一个聚合周期范 围内的数据点聚合到周期起始边界 上,如果将from和to的范围设置在 聚合周期内,会因为聚合未完成而造 成查询数据为空,所以建议from参 数相对于当前时间向前偏移至少1个 周期。以5分钟聚合周期为例:假设 当前时间点为10:35,10:30~10:35之 间的原始数据会被聚合到10:30这个 点上,所以查询5分钟数据点时from 参数应为10:30或之前。
说明
云监控会根据所选择的聚合粒度向前取 整from参数。
to 是 String 查询数据截止时间UNIX时间戳,单
位毫秒。from必须小于to。
period 是 Integer 监控数据粒度。
取值范围:
● 1,实时数据
● 300,5分钟粒度
● 1200,20分钟粒度
● 3600,1小时粒度
● 14400,4小时粒度
● 86400,1天粒度
名称 是否必选 参数类型 说明
filter 是 String 数据聚合方式,支持的聚合方式如 下:
● average:聚合周期内指标数据的 平均值。
● variance:聚合周期内指标数据 的方差。
● 对于dimensions字段的内容,可通过调用查询指标列表接口,在其响应体的相关指标 数据中获取。
● 对于OBS相关指标数据,当进行了相关OBS接口操作时可查询到相关指标数据,否则查 询结果为空。
● 样例:
请求样例一:查看弹性云服务器ID为6f3c6f91-4b24-4e1b-b7d1-a94ac1cb011d 的CPU使用率在2019-04-30 20:00:00到2019-04-30 22:00:00时间内,周期为20 分钟的监控数据。
GET https://{云监控的endpoint}/V1.0/{project_id}/metric-data?
namespace=SYS.ECS&metric_name=cpu_util&dim.0=instance_id,6f3c6f91-4b24-4e1b-b7d1-a94ac1cb011d&from=1556625600000&to=1556632800000&period=1200&filter=min
请求样例二:查询CloudTable服务维度分别是cluster_id为
f2fbxxxc-36b2-4d1d-895d-972a4d656xxx和instance_name为hmaster-active的
监控指标cmdProcessMem,在2019-04-30 20:00:00到2019-04-30 22:00:00时间 内,周期为20分钟的监控数据。
GET https://{云监控的endpoint}/V1.0/{project_id}/metric-data?
namespace=SYS.CloudTable&metric_name=cmdProcessMem&dim.
0=cluster_id,f2fbxxxc-36b2-4d1d-895d-972a4d656xxx&dim.1=instance_name,hmaster-active&from=1556625600000&to=1556632800000&period=1200&filter=variance
请求消息
无
响应消息
● 响应参数
表5-80 响应参数
名称 参数类型 说明
datapoints Array of
objects 指标数据列表。详细参数请参见表5-81。
由于查询数据时,云监控会根据所选择的聚合粒 度向前取整from参数,所以datapoints中包含的 数据点有可能会多于预期。
metric_name String 指标ID,例如弹性云服务器的监控指标CPU使用 率,对应的metric_name为cpu_util。各服务监控 指标请参考支持监控的服务列表。
表5-81 datapoints 字段数据结构说明
名称 参数类型 说明
average double 聚合周期内指标数据的平均值。
max double 聚合周期内指标数据的最大值。
min double 聚合周期内指标数据的最小值。
sum double 聚合周期内指标数据的求和值。
variance double 聚合周期内指标数据的方差。
timestamp long 指标采集时间,UNIX时间戳,单位毫秒。
unit String 指标单位。
● 响应样例
响应样例一:维度为SYS.ECS,响应弹性云服务器,CPU使用率的平均值。
{ "datapoints": [ {
"average": 0.23,
"timestamp": 1442341200000, "unit": "%"
} ],
"metric_name": "cpu_util"
}
响应样例二:维度为SYS.ECS,响应弹性云服务器,CPU使用率的求和值。
{ "datapoints": [ {
"sum": 0.53,
"timestamp": 1442341200000, "unit": "%"
} ],
"metric_name": "cpu_util"
}
响应样例三:维度为SYS.ECS,响应弹性云服务器,CPU使用率的最大值。
{ "datapoints": [ {
"max": 0.13,
"timestamp": 1442341200000, "unit": "%"
} ],
"metric_name": "cpu_util"
}
返回值
● 正常 200
● 异常
返回值 说明
400 Bad Request 请求错误。
401 Unauthorized 未提供认证信息,或认证信息错误。
403 Forbidden 请求页面被禁止访问。
408 Request Timeout 请求超出了服务器的等待时间。
429 Too Many
Requests 当前请求过多。
500 Internal Server
Error 请求未完成,服务异常。
503 Service
Unavailable 系统暂时不可用,请求受限。
错误码
请参考返回错误码说明。