注意:以下文档只适用于TOP接口,请谨慎使用!

文档中心 > 聚石塔

通过OpenAPI获取容器监控指标

更新时间:2022/01/18 访问次数:457

云监控

云监控产品介绍

https://help.aliyun.com/document_detail/35170.html

云应用与云监控分组

应用环境的每次发布单(一批容器实例),对应一个云监控分组

发布单生成的每个容器,对应一个云监控实例


image.png

例如,这个无状态应用,正式环境下作了一个发布,部署了两个容器。

对应的云监控分组名称为:k8s-c6fd41efd9df74f50a8e7804fcb73c27a-jck-namespace-6974-Deployment-jck-deployment-yacs-6974-1874-46250。该环境下的两个pod容器,分别对应了该分组下的两个云监控实例


查询步骤

1.聚石塔OpenAPI获取云监控分组

ListAppCmsGroups

入参:环境id 应用id

返回:分组名称列表

SDK版本 :2.0.5及以上


注:聚石塔OpenAPI与阿里云api不同,是另外一个sdk

聚石塔OpenAPI使用说明

2.云监控OpenAPI查询分组及其实例

根据分组名称查询云监控分组https://help.aliyun.com/document_detail/115032.html

根据分组查询云监控实例IDhttps://help.aliyun.com/document_detail/115035.html

3.云监控OpenAPI查询监控数据

查询具体的监控指标:https://help.aliyun.com/document_detail/51936.html


可以查询分组维度(多个实例聚合的)或实例维度(单个实例的),由dimensions参数指定


具体支持的指标如下:

http://metricmeta.oss-cn-hangzhou.aliyuncs.com/listMetricMeta_zh.html

搜索 acs_kubernetes 找到容器服务对应的指标,由metricName参数指定


监控指标查询示例

查询分组下具体一个实例的cpu使用率指标

//dimensions参数中指定分组或分组+实例,这里指定的是分组+实例,查询具体某个实例的数据
Map<String,String> dimensionMap = new TreeMap<>();
dimensionMap.put("groupId","23679660");
//如果想指定分组维度,则不需要传podId,下面这行注释掉就可以
dimensionMap.put("podId","5d9f1865-525c-11ea-a0a2-9a669ca3de1b");
List<Map<String,String>> list = new ArrayList<>();
list.add(dimensionMap);

DescribeMetricListRequest describeMetricListRequest = new DescribeMetricListRequest();
describeMetricListRequest.setNamespace("acs_kubernetes");
describeMetricListRequest.setDimensions(JSON.toJSONString(list));
describeMetricListRequest.setMetricName("pod.cpu.usage");
describeMetricListRequest.setStartTime("2020-02-19 16:00:00");
describeMetricListRequest.setEndTime("2020-02-19 16:05:00");
describeMetricListRequest.setPeriod("60");

DescribeMetricListResponse describeMetricListResponse = client.getAcsResponse(describeMetricListRequest);

说明,此处的参数podId为云监控实例id(通过云监控api 根据云监控分组查询得到),并非聚石塔pod容器名称


FAQ

关于此文档暂时还没有FAQ
返回
顶部