部分维度查询监控数据
更新时间:2024-04-18
接口描述
可根据多维度、单指标、多统计数据获取云产品指定时间范围内的监控数据。
接口限制
- 一个实例的任意一个指标一次返回的数据点数目不能超过1440个。
- 每次查询的维度组合数量不超过100个。
请求结构
- Method: POST
- Url: /csm/api/v2/userId/{userId}/services/{service}/data/metricData/PartialDimension
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户 ID | 是 | Path参数 |
service | String | 云产品标识,取值请参考云产品标识列表 | 是 | Path参数 |
startTime | String | 监控数据开始时间,请参考日期与时间, UTC日期表示 | 是 | Body参数 |
endTime | String | 监控数据结束时间,请参考日期与时间,UTC日期表示 | 是 | Body参数 |
statistics | List<String> | 统计方法类型列表,可选值:average、maximum、minimum、sum、sampleCount | 是 | Body参数 |
cycle | int | 统计周期,单位:秒,默认值:60 | 否 | Body参数 |
dimensions | List<Dimension> | 维度列表 | 是 | Body参数 |
resourceType | String | 监控对象类型,取值请参考云产品监控对象类型列表 | 否 | Body参数 |
metricName | String | 监控指标名称 | 是 | Body参数 |
region | String | 区域标识,取值请参考区域列表 | 否 | Body参数 |
pageNo | int | 页面序号,默认为1 | 否 | Body参数 |
pageSize | int | 页面大小,默认为10,最大为100 | 否 | Body参数 |
Dimension
名称 | 类型 | 描述 | 是否必须 |
---|---|---|---|
name | String | 维度key | 是 |
value | String | 维度value | 是 |
响应参数
名称 | 类型 | 描述 |
---|---|---|
requestId | String | 请求标识 |
code | String | 返回码 |
message | String | 错误信息 |
result | PageResult | 按页封装的结果 |
PageResult
名称 | 类型 | 描述 |
---|---|---|
pageNo | int | 页码编号 |
pageSize | int | 页面大小 |
totalCount | int | 总共个数 |
result | List<AllDataMetric> | 监控指标列表 |
AllDataMetric
名称 | 类型 | 描述 |
---|---|---|
region | String | 区域标识 |
scope | String | 云产品标识 |
userId | String | 用户ID |
resourceId | String | 资源ID |
metricName | String | 监控指标名称 |
dimensions | List<Dimensions> | 维度列表 |
dataPoints | List<DataPoint> | 监控指标数据 |
DataPoint
名称 | 类型 | 描述 |
---|---|---|
average | double | 统计周期内监控项的平均值 |
sum | double | 统计周期内监控项的和值 |
minimum | double | 统计周期内监控项的最小值 |
maximum | double | 统计周期内监控项的最大值 |
sampleCount | int | 统计周期内监控项数据点数 |
timestamp | String | 监控数据对应的时间 |
请求示例
Python
1HOST = 'http://bcm.bj.baidubce.com/'
2AK = 'ALTA****************3hVCYG'
3SK = 'b2c53***********************3ac1'
4config = BceClientConfiguration(credentials=BceCredentials(AK, SK), endpoint=HOST)
5
6# params definition
7user_id = "a0d04d7c***************7b6752ce4"
8scope = "BCE_BLB"
9region = "bj"
10metric_name = "ActiveConnCount"
11dimensions = [
12 {
13 "name": "BlbPortType",
14 "value": "TCP"
15 }
16]
17statistics = ["sum"]
18start_time = "2024-03-20T02:21:17Z"
19end_time = "2024-03-20T03:21:17Z"
20resource_type = "Blb"
21page_size = 1
22page_no = 1
23
24# create a bcm client
25bcm_client = BcmClient(config)
26
27result = bcm_client.get_metrics_by_partial_dimensions(user_id, scope, statistics, metric_name, start_time, end_time,
28 region=region, resource_type=resource_type,
29 dimensions=dimensions,
30 pageNo=page_no, pageSize=page_size)
31
32print(result)
33
响应示例
JSON
1{
2 "requestId": "bfdb5d91-39e6-4c35-aa73-caf76ad3440f",
3 "code": "success",
4 "message": "",
5 "result": {
6 "pageNo": 1,
7 "pageSize": 1,
8 "totalCount": 66,
9 "result": [{
10 "region": "bj",
11 "scope": "BCE_BLB",
12 "userId": "a0d04d7c***************7b6752ce4",
13 "resourceId": "lb-****8446",
14 "metricName": "ActiveConnCount",
15 "dimensions": [{
16 "name": "BlbId",
17 "value": "lb-****8446"
18 }, {
19 "name": "BlbPort",
20 "value": "3306"
21 }, {
22 "name": "BlbPortType",
23 "value": "TCP"
24 }],
25 "dataPoints": [{
26 "sum": 0.0,
27 "timestamp": "2024-03-20T02:21:17Z"
28 }, {
29 "sum": 0.0,
30 "timestamp": "2024-03-20T02:22:17Z"
31 },
32 // 省略中间点
33 {
34 "sum": 0.0,
35 "timestamp": "2024-03-20T03:19:17Z"
36 }, {
37 "sum": 0.0,
38 "timestamp": "2024-03-20T03:20:17Z"
39 }, {
40 "timestamp": "2024-03-20T03:21:17Z"
41 }]
42 }]
43 }
44}