批量查询监控数据 - BatchListMetricData
功能介绍
批量查询指定时间范围内指定指标的指定粒度的监控数据,目前最多支持500指标的批量查询。 对于不同的period取值和查询的指标数量,默认的最大查询区间(to-from)不同。 规则为"指标数量*(to-from)/监控周期<=3000",若超出阈值,会自动调整from以满足规则。
接口约束
须知:
-
单次POST请求消息体大小不能超过512KB,否则请求会被服务端拒绝。
-
对于不同的period取值和查询的指标数量,其对应的默认最大查询区间(to - from)也不同,计算规则为“指标数量 * (to - from) / 监控周期 ≤ 3000”。
指标数量:请求参数metrics属性对应元素的个数。
监控周期:请求参数period属性对应的值,需要转为毫秒值。
3000:响应体中的所有datapoints(指标数据列表)总和。
-
当period值为“1”时,监控周期为60*1000ms=60000ms。
-
当period值为"300" 时,监控周期为300*1000ms=300000ms。
-
当period值为"1200" 时,监控周期为1200*1000ms=1200000ms。
-
当period值为"3600" 时,监控周期为3600*1000ms=3600000ms。
-
当period值为"14400" 时,监控周期为14400*1000ms=14400000ms。
-
当period值为"86400" 时,监控周期为86400*1000ms=86400000ms。
例如批量查询300个指标,监控周期为60000ms,可算出(to - from)最大值为"600000",若设定的请求参数使(to - from)超出最大值,from值会自动调整为"to-600000"。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
- 如果使用身份策略授权,需具备如下身份策略权限。
授权项
访问级别
资源类型(*为必须)
条件键
别名
依赖的授权项
ces:metricData:list
List
-
-
-
-
URI
POST /V1.0/{project_id}/batch-query-metric-data
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
project_id |
是 |
String |
参数解释: 项目ID。用于明确项目归属,配置后可通过该ID查询项目下资产,可以通过调用API获取,也可以从控制台获取。获取方式请参见获取项目ID。 约束限制: 不涉及。 取值范围: 长度为[1,64]个字符。 默认取值: 不涉及。 |
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
Content-Type |
否 |
String |
参数解释: 发送的实体的MIME类型。 约束限制: 不涉及。 取值范围: 长度为[1,64]个字符。 默认取值: 默认使用 application/json; charset=UTF-8,如果API是对象、镜像上传等接口,媒体类型可按照流类型的不同进行确定。 |
|
X-Auth-Token |
否 |
String |
参数解释: 用户Token。 约束限制: 不涉及。 取值范围: 长度为[1,16384]个字符。 默认取值: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
metrics |
是 |
Array of MetricInfo objects |
参数解释 指标数据 约束限制 包含的指标数据对象个数为[1,500] |
|
period |
是 |
String |
参数解释 监控数据的聚合粒度,聚合解释可查看:“聚合含义” 约束限制 不涉及 取值范围 枚举值:
默认取值 不涉及 |
|
filter |
是 |
String |
参数解释: 数据聚合的方式。 约束限制: period为1(原始值)时,filter字段不生效,参数值默认为average。period大于1时filter才起作用。 取值范围: 支持 average、variance、min、max、sum。
默认取值: 不涉及。 |
|
from |
是 |
Integer |
参数解释 查询数据起始时间,UNIX时间戳,单位毫秒 约束限制 当period为1时,若(to- from) >436001000,则from调整为 to - 436001000 当period为300时,若(to - from) >2436001000,则from调整为 to - 2436001000 当period为1200时,若(to - from) >32436001000,则from调整为 to - 32436001000 当period为3600时,若(to -from) > 102436001000,则from调整为 to -102436001000 当period为14400时,若(to - from) >302436001000,则from调整为 to - 302436001000 当period为86400时,若(to -from) > 1802436001000,则from调整为 to - 1802436001000 取值范围 毫秒级时间戳范围为[1111111111111,9999999999999] 默认取值 不涉及 |
|
to |
是 |
Integer |
参数解释 查询数据截止时间,UNIX时间戳,单位毫秒 约束限制 from 必须小于to 取值范围 毫秒级时间戳范围为[1111111111111,9999999999999] 默认取值 不涉及 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
namespace |
是 |
String |
参数解释 服务命名空间,样例:弹性云服务器的命名空间为SYS.ECS。 各服务命名空间请参阅支持监控的服务列表。 约束限制 不涉及 取值范围 格式为service.item,service和item以点号拼接组成。 service和item必须以字母(大写或小写)开头,后面可以跟零个或多个字母(大写或小写)、数字、下划线(_),长度为[3,32]个字符 默认取值 不涉及 |
|
metric_name |
是 |
String |
参数解释: 指标ID,例如弹性云服务器的监控指标CPU使用率,对应的metric_name为cpu_util。各服务资源的指标名称,请参阅具体云服务的文档。您可以直接从支持监控的服务列表页面导航至相应文档。 约束限制: 不涉及。 取值范围: 必须以字母开头,只能包含0-9/a-z/A-Z/_/-;如:弹性云服务器中的监控指标cpu_util,表示弹性服务器的CPU使用率;文档数据库中的指标mongo001_command_ps,表示command执行频率。字符串长度为[1,96]。 默认取值: 不涉及。 |
|
dimensions |
是 |
Array of MetricsDimension objects |
参数解释 指标维度 约束限制 包含的指标维度对象个数为[1,4] |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
name |
是 |
String |
参数解释 资源维度,如:弹性云服务器,则维度为instance_id;目前最大支持4个维度,各服务资源的维度名称,请参阅具体云服务的文档。您可以直接从支持监控的服务列表页面导航至相应文档。 约束限制 不涉及 取值范围 由字母开头,后面可以包含字母、数字、_或-,长度为[1,32]个字符 默认取值 不涉及 |
|
value |
是 |
String |
参数解释 资源维度值,为资源的实例ID,如:4270ff17-aba3-4138-89fa-820594c39755。 约束限制 不涉及 取值范围 长度为[1,256]个字符 默认取值 不涉及 |
响应参数
状态码:200
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
metrics |
Array of BatchMetricData objects |
参数解释 监控指标响应体 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
unit |
String |
参数解释 指标单位 取值范围 不涉及 |
|
datapoints |
Array of DatapointForBatchMetric objects |
参数解释 指标数据列表。由于查询数据时,云监控会根据所选择的聚合粒度向前取整from参数,所以datapoints中包含的数据点有可能会多于预期,最多返回3000个数据点(响应参数metrics属性对应对象datapoints属性累加最多返回3000个数据点) |
|
namespace |
String |
参数解释 服务命名空间 取值范围 不涉及 |
|
metric_name |
String |
参数解释 指标名称,例如弹性云服务器监控指标中的cpu_util。 取值范围 不涉及 |
|
dimensions |
Array of MetricsDimensionResp objects |
参数解释 服务维度列表 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
max |
Double |
参数解释 聚合周期内指标数据的最大值 取值范围 不涉及 |
|
min |
Double |
参数解释 聚合周期内指标数据的最小值 取值范围 不涉及 |
|
average |
Double |
参数解释 聚合周期内指标数据的平均值 取值范围 不涉及 |
|
sum |
Double |
参数解释 聚合周期内指标数据的求和值 取值范围 不涉及 |
|
variance |
Double |
参数解释 聚合周期内指标数据的方差 取值范围 不涉及 |
|
timestamp |
Long |
参数解释 指标采集时间,UNIX时间戳,单位毫秒 取值范围 不涉及 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
name |
String |
参数解释 资源维度,如:弹性云服务器,则维度为instance_id;目前最大支持4个维度,各服务资源的维度名称,请参阅具体云服务的文档。您可以直接从支持监控的服务列表页面导航至相应文档。 取值范围 由字母开头,后面可以包含字母、数字、_或-,长度为[1,32]个字符 |
|
value |
String |
参数解释 资源维度值,为资源的实例ID,如:4270ff17-aba3-4138-89fa-820594c39755。 取值范围 长度为[1,256]个字符 |
状态码:400
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
- |
String |
请求错误。 |
状态码:401
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
- |
String |
未提供认证信息,或认证信息错误。 |
状态码:403
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
- |
String |
请求页面被禁止访问。 |
状态码:408
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
- |
String |
请求超出了服务器的等待时间。 |
状态码:429
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
- |
String |
请求过多。 |
状态码:500
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
- |
String |
请求未完成,服务异常。 |
状态码:503
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
- |
String |
系统暂时不可用,请求受限。 |
请求示例
{
"metrics" : [ {
"namespace" : "MINE.APP",
"dimensions" : [ {
"name" : "instance_id",
"value" : "33328f02-3814-422e-b688-bfdba93d4050"
} ],
"metric_name" : "cpu_util"
}, {
"namespace" : "MINE.APP",
"dimensions" : [ {
"name" : "instance_id",
"value" : "33328f02-3814-422e-b688-bfdba93d4051"
} ],
"metric_name" : "cpu_util"
} ],
"from" : 1484153313000,
"to" : 1484653313000,
"period" : "1",
"filter" : "average"
}
响应示例
状态码:200
OK
{
"metrics" : [ {
"unit" : "request/s",
"datapoints" : [ {
"average" : 0,
"timestamp" : 1484401920000
}, {
"average" : 1,
"timestamp" : 1484407920000
} ],
"namespace" : "MINE.APP",
"dimensions" : [ {
"name" : "instance_id",
"value" : "33328f02-3814-422e-b688-bfdba93d4050"
} ],
"metric_name" : "cpu_util"
}, {
"unit" : "request/s",
"datapoints" : [ {
"average" : 2.3,
"timestamp" : 1484401920000
}, {
"average" : 1.2,
"timestamp" : 1484407920000
} ],
"namespace" : "MINE.APP",
"dimensions" : [ {
"name" : "instance_id",
"value" : "33328f02-3814-422e-b688-bfdba93d4051"
} ],
"metric_name" : "cpu_util"
} ]
}
状态码
|
状态码 |
描述 |
|---|---|
|
200 |
OK |
|
400 |
Bad Request |
|
401 |
Unauthorized |
|
403 |
Forbidden |
|
408 |
Request Timeout |
|
429 |
Too Many Requests |
|
500 |
Internal Server Error |
|
503 |
Service Unavailable |
错误码
请参见错误码。