1. 接口描述
域名:monitor.api.qcloud.com
接口:GetMonitorData
获取云产品的监控数据。传入产品的命名空间、对象维度描述和监控指标即可获得相应的监控数据。
注意:读取监控数据新接口 GetMonitorData 支持1分钟粒度数据拉取,后期会支持更多产品更细粒度监控数据,旧接口 GetMetricStatistics 不再更新。建议您切换至此接口。
2. 输入参数
以下请求参数列表仅列出了接口请求参数,正式调用时需要加上公共请求参数,见 公共请求参数 页面。其中,此接口的 Action 字段为 GetMonitorData。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
namespace | 是 | String | 命名空间,每个云产品会有一个命名空间,具体名称见第5小节 |
metricName | 是 | String | 指标名称,具体名称见各产品监控接口中的说明文档 |
dimensions.n.name | 是 | String | 维度的名称 |
dimensions.n.value | 是 | String | 对应的维度的值 |
period | 否 | Int | 监控统计周期。默认为取值为300,单位为s。目前CVM、负载均衡、容器服务支持60s、300s粒度,其他产品支持仅300s。后续将逐步支持更多产品 |
startTime | 否 | Datetime | 起始时间,如"2016-01-01 10:25:00"。 默认时间为当天的”00:00:00” |
endTime | 否 | Datetime | 结束时间,默认为当前时间。 endTime 不能小于 startTime |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
code | Int | 错误码,0:成功,他值表示失败 |
message | String | 返回信息 |
startTime | Datetime | 起始时间 |
endTime | Datetime | 结束时间 |
metricName | String | 指标名称 |
period | Int | 监控统计周期 |
dataPoints | Array | 监控数据列表 |
4. 错误码
错误代码 | 错误描述 | 英文描述 |
---|---|---|
-502 | 资源不存在 | OperationDenied.SourceNotExists |
-503 | 请求参数有误 | InvalidParameter |
-505 | 参数缺失 | InvalidParameter.MissingParameter |
-507 | 超出限制 | OperationDenied.ExceedLimit |
-509 | 错误的维度组合 | InvalidParameter.DimensionGroupError |
-513 | DB操作失败 | InternalError.DBoperationFail |
5. 示例
输入
https://monitor.api.qcloud.com/v2/index.php? &<公共请求参数> &namespace=qce/lb &metricName=pvv_outtraffic &dimensions.0.name=protocol &dimensions.0.value=tcp &dimensions.1.name=vip &dimensions.1.value=123.206.201.134 &dimensions.2.name=vport &dimensions.2.value=80 &startTime=2016-06-28 14:10:00 &endTime=2016-06-28 14:20:00
输出
{
"code": 0,
"message": "",
"metricName": "pvv_outtraffic",
"startTime": "2016-06-28 14:10:00",
"endTime": "2016-06-28 14:20:00",
"period": 300,
"dataPoints": [
5.6,
6.4,
7.7
]
}
6. 特别说明
1)接口调用频率限制为:50次/秒,500次/分钟。若您需要调用的指标、对象较多,可能存在因限频出现拉取失败的情况,建议尽量将请求按时间维度均摊。
2)dimensions.n.name 和 dimensions.n.value 用来指定一个监控对象。有的对象需要多个维度才确定。
如在负载均衡中当需要获取 pvv_outtraffic(出流量)时需要指定 protocol,vip,vport三个维度。
dimensions.0.name=protocol
dimensions.0.value=tcp
dimensions.1.name=vip
dimensions.1.value=123.206.201.134
dimensions.2.name=vport
dimensions.2.value=80
3)由于数据上报存储有一定延时,当前最新时刻返回的数据有可能为空。建议拉取数据时拉取最近的一段时间(一次性拉取2~3个数据点),取最近的一个有数据的点作为最新数据。
4)返回的结果dataPoints是一个数组,数组每个元素是监控点数据。在下面的输出结果中,dataPoints 的三个数据,表示[14:00,14:05];[14:05,14:10]两个时间段统计的数据结果,返回的数据是闭区间,包含14:00、14:05、14:10三个点。
{
"code": 0,
"message": "",
"metricName": "pvv_outtraffic",
"startTime": "2016-06-28 14:00:00",
"endTime": "2016-06-28 14:10:00",
"period": 300,
"dataPoints": [
5.6,
6.4,
7.7
]
}