API 参考
文档版本 42
发布日期 2021-11-26
版权所有 © 华为技术有限公司 2022。 保留一切权利。
非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传 播。
商标声明
和其他华为商标均为华为技术有限公司的商标。
本文档提及的其他所有商标或注册商标,由各自的所有人拥有。
注意
您购买的产品、服务或特性等应受华为公司商业合同和条款的约束,本文档中描述的全部或部分产品、服务或 特性可能不在您的购买或使用范围之内。除非合同另有约定,华为公司对本文档内容不做任何明示或暗示的声 明或保证。
由于产品版本升级或其他原因,本文档内容会不定期进行更新。除非另有约定,本文档仅作为使用指导,本文 档中的所有陈述、信息和建议不构成任何明示或暗示的担保。
目 录
1 使用前必读... 1
1.1 概述... 1
1.2 调用说明...1
1.3 终端节点...1
1.4 约束与限制... 1
1.5 基本概念...2
2 API 概览... 4
3 如何调用 API...6
3.1 构造请求...6
3.2 认证鉴权... 10
3.3 返回结果... 11
4 快速入门...13
5 API 说明... 16
5.1 API 版本号管理... 16
5.1.1 查询 API 所有版本... 16
5.1.2 查询 API 指定版本号... 18
5.2 指标管理... 20
5.2.1 查询指标列表... 20
5.3 告警规则管理...24
5.3.1 查询告警规则列表... 24
5.3.2 查询单条告警规则信息...31
5.3.3 启停告警规则... 37
5.3.4 删除告警规则... 39
5.3.5 创建告警规则... 40
5.3.6 创建自定义告警模板... 48
5.3.7 删除自定义告警模板... 51
5.3.8 查询告警历史... 53
5.3.9 查询自定义告警模板列表... 62
5.3.10 更新自定义告警模板...67
5.3.11 修改告警规则...70
5.4 监控数据管理...76
5.4.1 查询监控数据... 76
5.4.2 添加监控数据... 81
5.4.3 批量查询监控数据... 85
5.4.4 查询主机配置数据... 94
5.5 配额管理... 96
5.5.1 查询配额... 96
5.6 资源分组管理...98
5.6.1 查询资源分组下的资源...98
5.6.2 创建资源分组...102
5.6.3 更新资源分组...104
5.6.4 删除资源分组...107
5.6.5 查询所有资源分组... 108
5.7 事件监控... 112
5.7.1 上报事件... 112
5.7.2 查询事件监控列表... 116
5.7.3 查询某一事件监控详情... 119
6 权限策略和授权项...125
6.1 策略和授权项说明... 125
6.2 API 版本号管理接口授权项说明... 126
6.3 指标管理接口授权项说明... 126
6.4 告警规则管理接口授权项说明...127
6.5 监控数据管理接口授权项说明...127
6.6 配额管理接口授权项说明... 128
6.7 事件监控接口授权项说明... 128
7 公共参数... 129
7.1 状态码... 129
7.2 返回错误码说明...130
7.3 获取项目 ID... 132
7.4 获取企业项目 ID...134
A 附录...135
A.1 支持监控的服务列表...135
B 文档修订记录... 144
1 使用前必读
1.1 概述
欢迎使用云监控服务(Cloud Eye)。云监控为用户提供一个针对弹性云服务器、带宽 等资源的立体化监控平台。使您全面了解云上的资源使用情况、业务的运行状况,并 及时收到异常告警做出反应,保证业务顺畅运行。
您可以使用本文档提供的API对指标、告警规则、监控数据进行相关操作,如查询指标 列表、查询告警规则列表、创建告警规则、删除告警规则等。支持的全部操作请参见 API概览。
在调用云监控服务API之前,请确保已经充分了解云监控服务相关概念,详细信息请参 见“产品介绍”。
1.2 调用说明
云监控服务提供了REST(Representational State Transfer)风格API,支持您通过 HTTPS请求调用,调用方法请参见如何调用API。
同时云监控服务还提供多种编程语言的SDK供您使用,SDK的使用方法请参见https://
sdkcenter.developer.huaweicloud.com/zh-cn?product=ces。
1.3 终端节点
终端节点(Endpoint)即调用API的请求地址,不同服务不同区域的终端节点不同,您 可以从地区和终端节点中查询所有服务的终端节点。
1.4 约束与限制
● 您能创建的告警规则的数量与配额有关系,如果您想查看服务配额、扩大配额,
具体请参见“配额调整”。
● 更详细的限制请参见具体API的说明。
1.5 基本概念
● 帐号
用户注册时的帐号,帐号对其所拥有的资源及云服务具有完全的访问权限,可以 重置用户密码、分配用户权限等。由于帐号是付费主体,为了确保帐号安全,建 议您不要直接使用帐号进行日常管理工作,而是创建用户并使用他们进行日常管 理工作。
● 用户
由帐号在IAM中创建的用户,是云服务的使用人员,具有身份凭证(密码和访问 密钥)。
在我的凭证下,您可以查看帐号ID和IAM用户ID。通常在调用API的鉴权过程中,
您需要用到帐号、用户和密码等信息。
● 区域(Region)
从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象 存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属 Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只 承载同一类业务或只面向特定租户提供业务服务的专用Region。
详情请参见区域和可用区。
● 可用区(AZ,Availability Zone)
一个可用区是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上 再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高 速光纤相连,以满足用户跨AZ构建高可用性系统的需求。
● 项目
区域默认对应一个项目,这个项目由系统预置,用来隔离物理区域间的资源(计 算资源、存储资源和网络资源),以默认项目为单位进行授权,用户可以访问您 帐号中该区域的所有资源。如果您希望进行更加精细的权限控制,可以在区域默 认的项目中创建子项目,并在子项目中创建资源,然后以子项目为单位进行授 权,使得用户仅能访问特定子项目中资源,使得资源的权限控制更加精确。
图1-1 项目隔离模型
同样在我的凭证下,您可以查看项目ID。
● 企业项目
企业项目是项目的升级版,针对企业不同项目间资源的分组和管理,是逻辑隔 离。企业项目中可以包含多个区域的资源,且项目中的资源可以迁入迁出。
关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理用户指 南》。
2 API 概览
通过使用云监控所提供的接口,您可以完整的使用云监控的所有功能。例如查询指标 列表、创建告警规则等。
表2-1 接口说明
类型 子类型 API 说明
Cloud Eye
接口 API版本
号管理 查询API所有版
本 查询云监控支持的API所有版本号。
查询API指定版
本号 查询云监控API指定版本号。
指标管理 查询指标列表 查询系统当前可监控指标的列表。
告警规则 管理
查询告警规则列 表
查询系统当前告警规则列表。
查询单条告警规 则信息
根据告警ID查询告警规则信息。
启停告警规则 根据告警ID启动或停止一条告警规则。
删除告警规则 根据告警ID删除一条告警规则。
创建告警规则 为系统当前的指标创建一条告警规则。
创建自定义告警 模板
创建自定义告警模板来添加一个或者多 个指标的告警规则。
删除自定义告警 模板
删除自定义告警模板。
查询告警历史 根据告警ID查询告警历史。
查询自定义告警 模板列表
查询自定义告警模板列表。
更新自定义告警 模板
更新自定义告警模板。
类型 子类型 API 说明 监控数据
管理
查询监控数据 查询指定时间范围指定指标的指定粒度
的监控数据。
添加监控数据 添加一条或多条指标监控数据。
批量查询监控数 据
批量查询指定时间范围内指定指标的指 定粒度的监控数据,目前最多支持10指 标的批量查询。
查询主机配置数 据
查询指定时间范围指定事件类型的主机 配置数据,可以通过参数指定需要查询 的数据维度。
配额管理 查询配额 通过该接口可以查询告警规则配额。
资源分组 管理
查询资源分组下 的资源
通过该接口可以查询资源分组下的资 源。
事件监控 上报事件 通过该接口上报自定义事件。
3 如何调用 API
3.1 构造请求
本节介绍REST API请求的组成,并以调用IAM服务的获取用户Token说明如何调用 API,该API获取用户的Token,Token可以用于调用其他API时鉴权。
您还可以通过这个视频教程了解如何构造请求调用API:https://
bbs.huaweicloud.com/videos/102987。
请求 URI
请求URI由如下部分组成:
{URI-scheme}://{Endpoint}/{resource-path}?{query-string}
尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传 递它,所以在此单独强调。
表3-1 URI 中的参数说明
参数 描述
URI-scheme 表示用于传输请求的协议,当前所有API均采用HTTPS协议。
Endpoint 指定承载REST服务端点的服务器域名或IP,不同服务不同区域的 Endpoint不同,您可以从地区和终端节点获取。
例如IAM服务在“华北-北京四 ”区域的Endpoint为“iam.cn- north-4.myhuaweicloud.com”。
resource-path 资源路径,也即API访问路径。从具体API的URI模块获取,例如
“获取用户Token”API的resource-path为“/v3/auth/tokens”。
query-string 查询参数,是可选部分,并不是每个API都有查询参数。查询参数 前面需要带一个“?”,形式为“参数名=参数取值”,例如“?
limit=10”,表示查询不超过10条数据。
例如您需要获取IAM在“华北-北京四”区域的Token,则需使用“华北-北京四”区域 的Endpoint(iam.cn-north-4.myhuaweicloud.com),并在获取用户Token的URI部 分找到resource-path(/v3/auth/tokens),拼接起来如下所示。
https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens
图3-1 URI 示意图
说明
为查看方便,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。
这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分 省略。
请求方法
HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。
表3-2 HTTP 方法
方法 说明
GET 请求服务器返回指定资源。
PUT 请求服务器更新指定资源。
POST 请求服务器新增资源或执行特殊操作。
DELETE 请求服务器删除指定资源,如删除对象等。
HEAD 请求服务器资源头部。
PATCH 请求服务器更新资源的部分内容。
当资源不存在的时候,PATCH可能会去创建一个新的资 源。
在获取用户Token的URI部分,您可以看到其请求方法为“POST”,则其请求为:
POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens
请求消息头
附加请求头字段,如指定的URI和HTTP方法所要求的字段。例如定义消息体类型的请 求头“Content-Type”,请求鉴权信息等。
详细的公共请求消息头字段请参见表3-3。
表3-3 公共请求消息头
名称 描述 是否必选 示例
Host 请求的服务器信
息,从服务API的 URL中获取。值为 hostname[:port]。
端口缺省时使用默 认的端口,https的 默认端口为443。
否
使用AK/SK认 证时该字段必 选。
code.test.com or
code.test.com:443
Content-Type 消息体的类型(格 式)。推荐用户使 用默认值application/json,
有其他取值时会在 具体接口中专门说 明。
是 application/json
Content-
Length 请求body长度,单
位为Byte。 否 3495
X-Project-Id project id,项目编 号。请参考获取项 目ID章节获取项目 编号。
否
如果是专属云 场景采用AK/SK认证方 式的接口请求 或者多project 场景采用AK/SK认证的 接口请求,则 该字段必选。
e9993fc787d94b6c886cb aa340f9c0f4
X-Auth-Token 用户Token。
用户Token也就是调 用获取用户Token接 口的响应值,该接 口是唯一不需要认 证的接口。
请求响应成功后在 响应消息头
(Headers)中包含 的“X-Subject- Token”的值即为 Token值。
否
使用Token认 证时该字段必 选。
注:以下仅为Token示例片 段
MIIPAgYJKoZIhvcNAQcCo ...ggg1BBIINPXsidG9rZ
说明
API同时支持使用AK/SK认证,AK/SK认证是使用SDK对请求进行签名,签名过程会自动往请求中 添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。
AK/SK认证的详细说明请参见认证鉴权的“AK/SK认证”。
对于获取用户Token接口,由于不需要认证,所以只添加“Content-Type”即可,添 加消息头后的请求如下所示。
POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json
请求消息体(可选)
该部分可选。请求消息体通常以结构化格式(如JSON或XML)发出,与请求消息头中 Content-Type对应,传递除请求消息头之外的内容。若请求消息体中的参数支持中 文,则中文字符必须为UTF-8编码。
每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消 息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根 据具体接口而定。
对于获取用户Token接口,您可以从接口的请求部分看到所需的请求参数及参数说 明。将消息体加入后的请求如下所示,加粗的斜体字段需要根据实际值填写,其中
username
为用户名,domainname
为用户所属的帐号名称,********
为用户登录密 码,xxxxxxxxxxxxxxxxxx
为project的名称,如“cn-north-1”,您可以从地区和终端 节点获取。说明
scope参数定义了Token的作用域,下面示例中获取的Token仅能访问project下的资源。您还可 以设置Token的作用域为某个帐号下所有资源或帐号的某个project下的资源,详细定义请参见获 取用户Token。
POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json
{ "auth": { "identity": { "methods": [ "password"
],
"password": { "user": {
"name": "username", "password": "********", "domain": {
"name": "domainname"
} } } }, "scope": { "project": {
"name": "xxxxxxxxxxxxxxxxxx"
} } } }
到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编 写代码等方式发送请求调用API。对于获取用户Token接口,返回的响应消息头中“x- subject-token”就是需要获取的用户Token。有了Token之后,您就可以使用Token认 证调用其他API。
3.2 认证鉴权
调用接口有如下两种认证方式,您可以选择其中一种进行认证鉴权。
● Token认证:通过Token认证调用请求。
● AK/SK认证:通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。
推荐使用AK/SK认证,其安全性比Token认证要高。
Token 认证
说明
Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。
Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。
Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得 操作API的权限。Token可通过调用获取用户Token接口获取。
云服务存在两种部署方式:项目级服务和全局级服务。其中:
● 项目级服务需要获取项目级别的Token,此时请求body中auth.scope的取值为 project。
● 全局级服务需要获取全局级别的Token,此时请求body中auth.scope的取值为 domain。
调用本服务API需要项目级别的Token,即调用获取用户Token接口时,请求body中 auth.scope的取值需要选择project,如下所示。
{ "auth": { "identity": { "methods": [ "password"
],
"password": { "user": {
"name": "username", "password": "********", "domain": {
"name": "domainname"
} } } }, "scope": { "project": {
"name": "xxxxxxxx"
} } } }
获取Token后,再调用其他接口时,您需要在请求消息头中添加“X-Auth-Token”,
其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token:
ABCDEFJ....”加到请求消息头即可,如下所示。
POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/projects Content-Type: application/json
X-Auth-Token: ABCDEFJ....
您还可以通过这个视频教程了解如何使用Token认证:https://
bbs.huaweicloud.com/videos/101333。
AK/SK 认证
说明
AK/SK签名认证方式仅支持消息体大小12MB以内,12MB以上的请求请使用Token认证。
AK/SK认证就是使用AK/SK对请求进行签名,在请求时将签名信息添加到消息头,从而 通过身份认证。
● AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密 钥ID和私有访问密钥一起使用,对请求进行加密签名。
● SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签 名,可标识发送方,并防止请求被修改。
使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门 的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参见API签名指南。
说明
签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。
3.3 返回结果
状态码
请求发送以后,您会收到响应,包含状态码、响应消息头和消息体。
状态码是一组从1xx到5xx的数字代码,状态码表示了请求响应的状态,完整的状态码 列表请参见状态码。
对于获取用户Token接口,如果调用后返回状态码为“201”,则表示请求成功。
响应消息头
对应请求消息头,响应同样也有消息头,如“Content-type”。
对于获取用户Token接口,返回如图3-2所示的消息头,其中“x-subject-token”就是 需要获取的用户Token。有了Token之后,您就可以使用Token认证调用其他API。
图3-2 获取用户 Token 响应消息头
响应消息体(可选)
该部分可选。响应消息体通常以结构化格式(如JSON或XML)返回,与响应消息头中 Content-Type对应,传递除响应消息头之外的内容。
对于获取用户Token接口,返回如下消息体。为篇幅起见,这里只展示部分内容。
{ "token": {
"expires_at": "2019-02-13T06:52:13.855000Z", "methods": [
"password"
],
"catalog": [ {
"endpoints": [ {
"region_id": "az-01", ...
当接口调用出错时,会返回错误码及错误信息说明,错误响应的Body体格式如下所 示。
{ "error_msg": "The format of message is error", "error_code": "AS.0001"
}
其中,error_code表示错误码,error_msg表示错误描述信息。
4 快速入门
概述
本节通过调用一系列云监控的API为ECS的cpu_util指标创建告警规则,当指标的数值达 到设置的阈值时及时通知用户处理。
说明
通过IAM服务获取到的Token有效期为24小时,需要使用同一个Token鉴权时,可以先将Token 缓存,避免频繁调用。
创建流程
1. 获取用户Token
2. 查询可监控的指标列表
3. 创建告警规则
操作步骤
1. 获取用户Token。
发送POST https://IAM的终端节点/v3/auth/tokens。
Request Header中添加Content-Type: application/json。
Request Body如下所示:
{ "auth": { "identity": { "methods": [ "password"
],
"password": { "user": {
"name": "James", "password": "**********", "domain": {
"name": "A-Company"
} } } }, "scope": { "project": { "name": "XXX",
"domain": {
"name": "A-Company"
} } } }}
您需要指定如下参数:
– user.name:用户名称,根据获取token的主体填写。
– password:用户的登录密码。
– domain.name:用户所属的账号名称。如果是账号获取token,账号的 user.name和domain.name相同,此处填写user.name即可。否则此处填写用 户所属的账号名。
– project.name:区域。
不同区域的名称不同,您可以从地区和终端节点中查询区域,例如cn- north-4。
说明
Response Header中获取X-Subject-Token,即为签名后的Token。
2. 查询可监控的指标列表。
发送“GET https://云监控的终端节点/V1.0/{project_id}/metrics”。
在Request Header中增加“X-Auth-Token”,“X-Auth-Token”的取值为1中获 取的Token。
请求响应成功后,返回metrics信息,如下所示的"metric_name": "cpu_util"。
{ "metrics": [ {
"namespace": "SYS.ECS", "dimensions": [
{
"name": "instance_id",
"value": "d9112af5-6913-4f3b-bd0a-3f96711e004d"
} ],
"metric_name": "cpu_util", "unit": "%"
} ],
"meta_data": { "count": 1,
"marker": "SYS.ECS.cpu_util.instance_id:d9112af5-6913-4f3b-bd0a-3f96711e004d", "total": 7
} }
若请求失败,则会返回错误码及对应的错误信息说明,详细错误码信息请参考返 回错误码说明。
3. 创建告警规则。
发送“POST https://云监控的终端节点/V1.0/{project_id}/alarms”。
在Request Body中传入参数如下:
{ "alarm_name": "alarm-rp0E", //告警规则名称(必填,String)
"alarm_description": "", "metric": {
"namespace": "SYS.ECS", //命名空间(必填,String)
"dimensions": [ {
"name": "instance_id",
"value": "33328f02-3814-422e-b688-bfdba93d4051"
} ],
"metric_name": "cpu_util" //指标名称(必填,String)
},
"condition": {
"period": 300, //告警周期(必填,整数)
"filter": "average", //数据聚合方式(必填,String)
"comparison_operator": ">=", //告警阈值的比较条件(必填,String)
"value": 80, //告警阈值(必填,String)
"unit": "%", //数据单位(必填,String)
"count": 1 },
"alarm_enabled": true, "alarm_action_enabled": true, "alarm_level": 2,
"alarm_actions": [ {
"type": "notification", "notificationList": [ ] }
],
"ok_actions": [ {
"type": "notification", "notificationList": [ ] }
] }
请求响应成功后,返回alarm_id。
{ "alarm_id":"al1450321795427dR8p5mQBo"
}
若请求失败,则会返回错误码及对应的错误信息说明,详细错误码信息请参考返 回错误码说明。
根据3中的响应alarm_id,可对告警规则进行查询、启停、删除等操作。
5 API 说明
5.1 API 版本号管理
5.1.1 查询 API 所有版本
功能介绍
查询云监控支持的API所有版本号。
URI
GET /
请求消息
请求样例
GET https://{云监控的终端节点}/
响应消息
● 响应参数
表5-1 要素说明
名称 参数类型 说明
versions Array of
objects 描述version相关对象的列表。
详细参数说明请参见表5-2。
表5-2 versions 字段数据结构说明
名称 参数类型 说明
id String 版本ID(版本号),如v1。
links Array of
objects API的URL地址。
详细参数说明请参见表5-3。
version String 若该版本API支持微版本,该参数表示支持的最大 微版本号,如果不支持微版本,则为空。
status String 版本状态,为如下3种:
CURRENT:表示该版本为主推版本。
SUPPORTED:表示为老版本,但是现在还继续支 持。
DEPRECATED:表示为废弃版本,存在后续删除 的可能。
updated String 版本发布时间,采用UTC时间表示。如v1发布的时 间2014-06-28T12:20:21Z。
min_versio
n String 若该版本API 支持微版本,该参数表示支持的最小 微版本号, 如果不支持微版本,则为空。
表5-3 links 字段数据结构说明
名称 参数类型 说明
href String 当前API版本的引用地址。
rel String 当前API版本和被引用地址的关系。
● 响应样例
{ "versions": [ {
"id": "V1.0", "links": [ {
"href": "https://x.x.x.x/V1.0/", "rel": "self"
} ],
"min_version": "", "status": "CURRENT",
"updated": "2018-09-30T00:00:00Z", "version": ""
} ]}
返回值
● 正常 200
● 异常
返回值 说明
400 Bad Request 请求错误。
401 Unauthorized 未提供认证信息,或认证信息错误。
403 Forbidden 请求页面被禁止访问。
408 Request Timeout 请求超出了服务器的等待时间。
429 Too Many
Requests 当前请求过多。
500 Internal Server
Error 请求未完成,服务异常。
503 Service
Unavailable 系统暂时不可用,请求受限。
错误码
请参考返回错误码说明。
5.1.2 查询 API 指定版本号
功能介绍
查询云监控API指定版本号。
URI
GET /{api_version}
● 参数说明
表5-4 参数说明
名称 是否必选 说明
api_version 是 API版本号。
● 样例
GET https://{云监控的终端节点}/V1.0
请求消息
无
响应消息
● 响应参数
表5-5 响应参数
名称 参数类型 说明
version Objects 描述version 相关对象。
详细参数说明请参见表5-6。
表5-6 versions 字段数据结构说明
名称 参数类型 说明
id String 版本ID(版本号),如v1。
links Array of
objects API的URL地址。
详细参数说明请参见表5-7。
version String 若该版本API支持微版本,该参数表示支持的最大 微版本号,如果不支持微版本,则为空。
status String 版本状态,为如下3种:
CURRENT:表示该版本为主推版本。
SUPPORTED:表示为老版本,但是现在还继续支 持。
DEPRECATED:表示为废弃版本,存在后续删除 的可能。
updated String 版本发布时间,采用UTC时间表示。如v1发布的 时间2014-06-28T12:20:21Z。
min_version String 若该版本API 支持微版本,该参数表示支持的最 小微版本号, 如果不支持微版本,则为空。
表5-7 links 字段数据结构说明
名称 参数类型 说明
href String 当前API版本的引用地址。
rel String 当前API版本和被引用地址的关系。
● 响应样例
{ "version": { "id": "V1.0", "links": [ {
"href": "https://x.x.x.x/V1.0/", "rel": "self"
} ],
"min_version": "", "status": "CURRENT",
"updated": "2018-09-30T00:00:00Z",
"version": ""
} }
返回值
● 正常 200
● 异常
返回值 说明
400 Bad Request 请求错误。
401 Unauthorized 未提供认证信息,或认证信息错误。
403 Forbidden 请求页面被禁止访问。
408 Request Timeout 请求超出了服务器的等待时间。
429 Too Many
Requests 当前请求过多。
500 Internal Server
Error 请求未完成,服务异常。
503 Service
Unavailable 系统暂时不可用,请求受限。
错误码
请参考返回错误码说明。
5.2 指标管理
5.2.1 查询指标列表
功能介绍
查询系统当前可监控指标列表,可以指定指标命名空间、指标名称、维度、排序方 式,起始记录和最大记录条数过滤查询结果。
调试
您可以在API Explorer中调试该接口。
URI
GET /V1.0/{project_id}/metrics
● 参数说明
表5-8 参数说明
名称 是否必选 说明
project_id 是 项目ID。
获取方式请参见获取项目ID。
表5-9 查询检索参数说明
名称 是否必
选
参数类 型
说明
namespace 否 String 查询服务的命名空间,各服务命名空间请参考 支持监控的服务列表。
格式为service.item;service和item必须是字 符串,必须以字母开头,只能包含0-9/a-z/A- Z/_,service.item总长度最短为3,最大为 32。
metric_na
me 否 String 指标ID,例如弹性云服务器的监控指标CPU使 用率,对应的metric_name为cpu_util。各服 务监控指标请参考支持监控的服务列表。
dim 否 String 监控维度,例如弹性云服务器的维度为 instance_id。各服务维度请参考支持监控的服 务列表。
目前最大支持3个维度,必须从0开始;维度 格式为dim.{i}=key,value,key的最大长度 32,value的最大长度为256。
单维度:dim.0=instance_id,
6f3c6f91-4b24-4e1b-b7d1-a94ac1cb011d 多维度:dim.0=key,value&dim.1=key,value start 否 String 分页起始值,格式为:
namespace.metric_name.key:value
例如:start=SYS.ECS.cpu_util.instance_id:d9112af5 -6913-4f3b-bd0a-3f96711e004d
limit 否 Intege
r 取值范围(0,1000],默认值为1000。
用于限制结果数据条数。
order 否 String 用于标识结果排序方法,按时间戳排序。
取值说明,默认为desc:
● asc,升序
● desc,降序
● 请求样例
请求样例一:查询当前可监控所有指标列表。
GET https://{云监控的终端节点}/V1.0/{project_id}/metrics
请求样例二:查询弹性云服务器ID为6f3c6f91-4b24-4e1b-b7d1-a94ac1cb011d 的监控指标CPU使用率,结果按时间戳降序保留10条数据。
GET https://{云监控的终端节点}/V1.0/{project_id}/metrics?
namespace=SYS.ECS&metric_name=cpu_util&dim.0=instance_id,6f3c6f91-4b24-4e1b-b7d1- a94ac1cb011d&limit=10&order=desc
请求消息
无
响应消息
● 响应参数
表5-10 响应参数
名称 参数类型 说明
metrics Array of
objects 指标对象列表。
详细参数请参见表5-11。
meta_data Object 查询结果元数据信息,包括分页信息等。
详细参数请参见表5-13。
表5-11 metrics 字段数据结构说明
名称 参数类型 说明
namespace String 指标所属命名空间。
dimensions Array of
objects 指标维度列表。
详细参数请参见表5-12。
metric_name String 指标名称,如cpu_util。
unit String 指标单位。
表5-12 dimensions 字段数据结构说明
名称 参数类型 说明
name String 监控维度名称,例如弹性云服务器的维度为 instance_id。各服务维度请参考支持监控的服 务列表,可参考维度中key字段。
value String 维度取值,例如弹性云服务器的ID。
长度最短为1,最大为256。
表5-13 meta_data 字段数据结构说明
名称 参数类型 说明
count Integer 当前返回结果条数。
marker String 下一个开始的标记,用于分页。
如本次查询10条数据,第十条为cpu_util,下 次start配置为cpu_util可从该指标开始查询。
total Integer 指标总条数。
● 响应样例
{ "metrics": [ {
"namespace": "SYS.ECS", "dimensions": [
{
"name": "instance_id",
"value": "d9112af5-6913-4f3b-bd0a-3f96711e004d"
} ],
"metric_name": "cpu_util", "unit": "%"
} ],
"meta_data": { "count": 1,
"marker": "SYS.ECS.cpu_util.instance_id:d9112af5-6913-4f3b-bd0a-3f96711e004d", "total": 7
} }
返回值
● 正常 200
● 异常
返回值 说明
400 Bad Request 请求错误。
401 Unauthorized 未提供认证信息,或认证信息错误。
403 Forbidden 请求页面被禁止访问。
408 Request Timeout 请求超出了服务器的等待时间。
429 Too Many
Requests 当前请求过多。
500 Internal Server
Error 请求未完成,服务异常。
503 Service
Unavailable 系统暂时不可用,请求受限。
错误码
请参考返回错误码说明。
5.3 告警规则管理
5.3.1 查询告警规则列表
功能介绍
查询告警规则列表,可以指定分页条件限制结果数量,可以指定排序规则。
调试
您可以在API Explorer中调试该接口。
URI
GET /V1.0/{project_id}/alarms
● 参数说明
表5-14 参数说明
名称 是否必选 说明
project_id 是 项目ID。
获取方式请参见获取项目ID。
表5-15 参数说明
名称 参数类型 说明
alarms Array of
objects 告警规则列表。
表5-16 查询检索参数
名称 是否必选 参数类型 说明
start 否 String 分页起始值,内容为alarm_id。
limit 否 Integer 取值范围(0,100],默认值为100 用于限制结果数据条数。
名称 是否必选 参数类型 说明
order 否 String 用于标识结果排序方法,时间戳
排序。
取值说明,默认值为desc。
● asc:升序
● desc:降序 enterprise_pr
oject_id 否 String 企业项目ID,默认值为
all_granted_eps。表示所有企业 项目。
● 当查询所有企业项目时,配置 为:all_granted_eps。
● 当需要查询某个企业项目时,
配置为对应的企业项目ID,请 参考获取企业项目ID。
● 样例
请求样例一:查询当前告警规则列表。
GET https://{云监控的endpoint}/V1.0/{project_id}/alarms
请求样例二:查询告警规则列表,从alarm_id为al1441967036681YkazZ0deN开 始,结果按时间戳降序保留10条数据。
GET https://{云监控的endpoint}/V1.0/{project_id}/alarms?
start=al1441967036681YkazZ0deN&limit=10&order=desc
请求样例三:查询所有企业项目下的告警规则列表,从alarm_id为 al1441967036681YkazZ0deN开始,结果按时间戳降序保留10条数据。
GET https://{云监控的endpoint}/V1.0/{project_id}/alarms?
start=al1441967036681YkazZ0deN&limit=10&order=desc&enterprise_project_id=all_granted_eps
请求消息
无
响应消息
● 响应参数
表5-17 响应参数
名称 参数类型 说明
metric_alarms Array of
objects 告警对象列表。
详细参数请参见表5-18。
meta_data Object 查询结果元数据信息,包括分页信息等。
详细参数请参见表5-25。
表5-18 metric_alarms 字段数据结构说明
名称 参数类型 说明
alarm_name String 告警名称。
alarm_descripti
on String 告警描述。
metric Object 告警指标。
详细参数请参见表5-19。
condition Object 告警触发条件。
详细参数请参见表5-24。
alarm_enabled Boolean 是否启用该条告警。
alarm_level Integer 告警级别,默认为2,级别为1、2、3、4。分 别对应紧急、重要、次要、提示。
alarm_action_e
nabled Boolean 是否启用该条告警触发的动作。
alarm_actions Array of
objects 告警触发的动作。
详细参数请参见表5-21。
ok_actions Array of
objects 告警恢复触发的动作。
详细参数请参见表5-22。
insufficientdata
_actions Array of
objects 数据不足触发的动作。
详细参数请参见表5-23。
alarm_action_b
egin_time String 告警规则生效的开始时间,告警规则仅在生效 时间内发送通知消息。
例如alarm_action_begin_time为8:00,
alarm_action_end_time为20:00时,则对应的 告警规则仅在08:00-20:00发送通知消息。
alarm_action_e
nd_time String 告警规则生效的结束时间,告警规则仅在生效 时间内发送通知消息。
例如alarm_action_begin_time为8:00,
alarm_action_end_time为20:00时,则对应的 告警规则仅在08:00-20:00发送通知消息。
alarm_type String 告警类型。
● 针对事件类型的告警时,告警类型为 EVENT.SYS(系统事件)或EVENT.CUSTOM
(自定义事件)。
● 针对资源分组的告警时,告警类型为 RESOURCE_GROUP。
● 针对指定资源的告警时,告警类型为 MULTI_INSTANCE。
alarm_id String 告警规则的ID。
名称 参数类型 说明
update_time long 告警状态变更的时间,UNIX时间戳,单位毫 秒。
alarm_state String 告警状态,取值说明:
● ok:正常
● alarm:告警
● insufficient_data:数据不足 enterprise_proj
ect_id String 企业项目ID。
● 取值为all_granted_eps时,表示所有企业项 目。
● 取值为0时,表示默认的企业项目default。
表5-19 metric 字段数据结构说明
名称 参数类型 说明
namespace String 查询服务的命名空间,各服务命名空间请参考支 持监控的服务列表。
dimensions Array of
objects 指标维度列表。
详细参数请参见表5-20。
metric_name String 指标ID,例如弹性云服务器的监控指标CPU使用 率,对应的metric_name为cpu_util。各服务监控 指标请参考支持监控的服务列表。
resource_gro
up_id String 创建告警规则时选择的资源分组ID,如:
rg1603786526428bWbVmk4rP resource_gro
up_name String 创建告警规则时选择的资源分组名称,如:
Resource-Group-ECS-01
表5-20 dimensions 字段数据结构说明
名称 参数类型 说明
name String 监控维度名称,例如弹性云服务器的维度为 instance_id。各服务维度请参考支持监控的服务 列表,可参考维度中key字段。
value String 维度取值,例如弹性云服务器的ID。
长度最短为1,最大为256。
表5-21 alarm_actions 字段数据结构说明
名称 参数类型 说明
type String 告警通知类型,取值如下:
● notification:通知。
● autoscaling:弹性伸缩。
notificationLi
st Array of
strings 告警状态发生变化时,被通知对象的列表。
说明被通知对象的ID列表的参数类型为字符串。
表5-22 ok_actions 字段数据结构说明
名称 参数类型 说明
type String 告警恢复触发告警通知类型,取值如下:
● notification:通知。
● autoscaling:弹性伸缩。
notificationLi
st Array of
strings 告警状态发生变化时,被通知对象的ID列表。
说明被通知对象的ID列表的参数类型为字符串。
表5-23 insufficientdata_actions 字段数据结构说明
名称 参数类型 说明
type String 数据不足触发告警通知类型,取值为 notification。
notificationLi
st Array of
strings 数据不足触发告警通知时,被通知对象的ID列 表。
表5-24 condition 字段数据结构说明
名称 参数类型 说明
period Integer 告警条件判断周期,单位为秒。
filter String 数据聚合方式,支持的聚合方式如下:
● average:聚合周期内指标数据的平均值。
● max:聚合周期内指标数据的最大值。
● min:聚合周期内指标数据的最小值
● sum:聚合周期内指标数据的求和值。
● variance:聚合周期内指标数据的方差。
名称 参数类型 说明 comparison_o
perator String 告警阈值的比较条件,可以是>、=、<、>=、
<=。
value Double 告警阈值,取值范围[0, Number.MAX_VALUE],
Number.MAX_VALUE值为 1.7976931348623157e+108。
具体阈值取值请参见附录中各服务监控指标中取 值范围,如支持监控的服务列表中ECS的CPU使用 率cpu_util取值范围可配置80。
unit String 数据的单位,最大长度为32位。
count Integer 触发告警连续发生次数,取值范围[1, 5]。
suppress_dur
ation Integer 发送告警的周期。值可为0、300、600、900、
1800、3600、10800、21600、43200、86400。
0表示只告警一次,300表示每5分钟告警一次,
600表示每10分钟告警一次,900表示每15分钟告 警一次,1800表示每30分钟告警一次,3600表示 每1小时告警一次,10800表示每3小时告警一 次,21600表示每6小时告警一次,43200表示每 12小时告警一次,86400表示每1天告警一次。
表5-25 meta_data 字段数据结构说明
名称 参数类型 说明
count Integer 当前返回结果条数。
marker String 下一个开始的标记,用于分页。
如本次查询10条数据,第十条为alarm_id为 1441967036681YkazZ0deN,下次start配置为 al1441967036681YkazZ0deN可从该alarm_id开 始查询。
total Integer 结果总条数。
● 响应样例
{ "metric_alarms": [ {
"alarm_name": "alarm-ttttttt", "alarm_description": "", "metric": {
"namespace": "SYS.ECS", "dimensions": [
{
"name": "instance_id",
"value": "07814c0e-59a1-4fcd-a6fb-56f2f6923046"
} ],
"metric_name": "cpu_util"
},
"condition": {
"period": 300, "filter": "average",
"comparison_operator": ">=", "value": 0,
"unit": "%",
"count": 3 },
"alarm_enabled": true, "alarm_level": 2,
"alarm_action_enabled": false,
"alarm_id": "al15330507498596W7vmlGKL", "update_time": 1533050749992,
"alarm_state": "alarm"
}, {
"alarm_name": "alarm-m5rwxxxxxxx", "alarm_description": "",
"metric": {
"namespace": "SYS.ECS", "dimensions": [
{
"name": "instance_id",
"value": "30f3858d-4377-4514-9081-be5bdbf1392e"
} ],
"metric_name": "network_incoming_bytes_aggregate_rate"
},
"condition": { "period": 300, "filter": "average",
"comparison_operator": ">=", "value": 12,
"unit": "Byte/s", "count": 3 },
"alarm_enabled": true, "alarm_level": 2,
"alarm_action_enabled": true, "alarm_actions": [
{
"type": "notification", "notificationList": [
"urn:smn:region:68438a86d98e427e907e0097b7e35d48:test0315"
] } ],
"ok_actions": [ {
"type": "notification", "notificationList": [
"urn:smn:region:68438a86d98e427e907e0097b7e35d48:test0315"
] } ],
"insufficientdata_actions": [ {
"type": "notification", "notificationList": [
"urn:smn:region:68438a86d98e427e907e0097b7e35d48:test0315"
] } ],
"alarm_action_begin_time": "08:00", "alarm_action_end_time": "20:00", "alarm_id": "al1533031226533nKJexAlbq", "update_time": 1533204036276,
"alarm_state": "ok"
} ],
"meta_data": { "count": 2,
"marker": "al1533031226533nKJexAlbq", "total": 389
} }
返回值
● 正常 200
● 异常
返回值 说明
400 Bad Request 请求错误。
401 Unauthorized 未提供认证信息,或认证信息错误。
403 Forbidden 请求页面被禁止访问。
408 Request Timeout 请求超出了服务器的等待时间。
429 Too Many
Requests 当前请求过多。
500 Internal Server
Error 请求未完成,服务异常。
503 Service
Unavailable 系统暂时不可用,请求受限。
错误码
请参考返回错误码说明。
5.3.2 查询单条告警规则信息
功能介绍
根据告警ID查询告警规则信息。
调试
您可以在API Explorer中调试该接口。
URI
GET /V1.0/{project_id}/alarms/{alarm_id}
● 参数说明
表5-26 参数说明
名称 是否必选 说明
project_id 是 项目ID。
获取方式请参见获取项目ID。
alarm_id 是 告警规则的ID。
● 样例
GET https://{云监控的endpoint}/V1.0/{project_id}/alarms/al1441967036681YkazZ0deN
请求消息
无
响应消息
● 响应参数
名称 参数类型 说明
metric_alarm
s Array of
objects 告警对象列表。
详细参数请参见表5-27。
表5-27 metric_alarms 字段数据结构说明
名称 参数类型 说明
alarm_name String 告警名称。
alarm_descripti
on String 告警描述。
metric Object 告警指标。
详细参数请参见表5-28。
condition Object 告警触发条件。
详细参数请参见表5-33。
alarm_enabled Boolean 是否启用该条告警。
alarm_level Integer 告警级别,默认为2,级别为1、2、3、4。分别 对应紧急、重要、次要、提示。
名称 参数类型 说明 alarm_type String 告警类型。
● 针对事件类型的告警时,告警类型为 EVENT.SYS(系统事件)或EVENT.CUSTOM
(自定义事件)。
● 针对资源分组的告警时,告警类型为 RESOURCE_GROUP。
● 针对指定资源的告警时,告警类型为 MULTI_INSTANCE。
alarm_action_e
nabled Boolean 是否启用该条告警触发的动作。
alarm_actions Array of
objects 告警触发的动作。
详细参数请参见表5-30。
ok_actions Array of
objects 告警恢复触发的动作。
详细参数请参见表5-31。
insufficientda
ta_actions Array of
objects 数据不足触发的动作。
详细参数请参见表5-32。
alarm_action_
begin_time String 告警规则生效的开始时间,告警规则仅在生效 时间内发送通知消息。
例如alarm_action_begin_time为8:00,
alarm_action_end_time为20:00时,则对应的 告警规则仅在08:00-20:00发送通知消息。
alarm_action_e
nd_time String 告警规则生效的结束时间,告警规则仅在生效 时间内发送通知消息。
例如alarm_action_begin_time为8:00,
alarm_action_end_time为20:00时,则对应的 告警规则仅在08:00-20:00发送通知消息。
alarm_id String 告警规则的ID。
update_time long 告警状态变更的时间,UNIX时间戳,单位毫 秒。
alarm_state String 告警状态,取值说明:
● ok,正常
● alarm,告警
● insufficient_data,数据不足 enterprise_proj
ect_id String 企业项目ID。
● 取值为all_granted_eps时,表示所有企业项 目。
● 取值为0时,表示默认的企业项目default。
表5-28 metric 字段数据结构说明
名称 参数类型 说明
namespace String 查询服务的命名空间,各服务命名空间请参考支 持监控的服务列表。
dimensions Array of
objects 指标维度列表。
详细参数请参见表5-29。
metric_name String 指标ID,例如弹性云服务器的监控指标CPU使用 率,对应的metric_name为cpu_util。各服务监控 指标请参考支持监控的服务列表。
resource_gro
up_id String 创建告警规则时选择的资源分组ID,如:
rg1603786526428bWbVmk4rP resource_gro
up_name String 创建告警规则时选择的资源分组名称,如:
Resource-Group-ECS-01
表5-29 dimensions 字段数据结构说明
名称 参数类型 说明
name String 监控维度名称,例如弹性云服务器的维度为 instance_id。各服务维度请参考支持监控的服务 列表,可参考维度中key字段。
value String 维度取值,例如弹性云服务器的ID。
长度最短为1,最大为256。
表5-30 alarm_actions 字段数据结构说明
名称 参数类型 说明
type String 告警通知类型,取值如下:
● notification:通知。
● autoscaling:弹性伸缩。
notificationLi
st Array of
strings 告警状态发生变化时,被通知对象的列表。
说明被通知对象的ID列表的参数类型为字符串。
表5-31 ok_actions 字段数据结构说明
名称 参数类型 说明
type String 告警恢复触发告警通知类型,取值如下:
● notification:通知。
● autoscaling:弹性伸缩。
notificationLi
st Array of
strings 告警状态发生变化时,被通知对象的列表。
说明被通知对象的ID列表的参数类型为字符串。
表5-32 insufficientdata_actions 字段数据结构说明
名称 参数类型 说明
type String 告警恢复触发告警通知类型,取值如下:
notification。
notificationLi
st Array of
strings 告警状态发生变化时,被通知对象的列表。
说明被通知对象的ID列表的参数类型为字符串。
表5-33 condition 字段数据结构说明
名称 参数类型 说明
period Integer 告警条件判断周期,单位为秒。
filter String 数据聚合方式,支持的聚合方式如下:
● average:聚合周期内指标数据的平均值。
● max:聚合周期内指标数据的最大值。
● min:聚合周期内指标数据的最小值。
● sum:聚合周期内指标数据的求和值。
● variance:聚合周期内指标数据的方差。
comparison_o
perator String 告警阈值的比较条件,可以是>、=、<、>=、
<=。
value Double 告警阈值,取值范围[0, Number.MAX_VALUE],
Number.MAX_VALUE值为 1.7976931348623157e+108。
具体阈值取值请参见附录中各服务监控指标中取 值范围,如支持监控的服务列表中ECS的CPU使用 率cpu_util取值范围可配置80。
unit String 数据的单位,最大长度为32位。
count Integer 触发告警连续发生次数,取值范围[1, 5]。
名称 参数类型 说明 suppress_dur
ation Integer 发送告警的周期。值可为0、300、600、900、
1800、3600、10800、21600、43200、86400。
0表示只告警一次,300表示每5分钟告警一次,
600表示每10分钟告警一次,900表示每15分钟告 警一次,1800表示每30分钟告警一次,3600表示 每1小时告警一次,10800表示每3小时告警一 次,21600表示每6小时告警一次,43200表示每 12小时告警一次,86400表示每1天告警一次。
● 响应样例
{"metric_alarms":
[ {
"alarm_name":"alarm-ipwx", "alarm_description":"", "metric":
{
"namespace":"SYS.ELB", "dimensions":
[ {
"name":"lb_instance_id",
"value":"44d06d10-bce0-4237-86b9-7b4d1e7d5621"
} ],
"metric_name":"m8_out_Bps"
}, "condition":
{
"period":300, "filter":"sum",
"comparison_operator":">=", "value":0,
"unit":"", "count":1 },
"alarm_enabled":true, "alarm_level": 2,
"alarm_action_enabled":true, "alarm_actions":
[ {
"type":"notification",
"notificationList":["urn:smn:region:68438a86d98e427e907e0097b7e35d48:sd"]
} ],
"ok_actions":
[ {
"type":"notification",
"notificationList":["urn:smn:region:68438a86d98e427e907e0097b7e35d48:sd"]
} ],
"insufficientdata_actions": [ {
"type": "notification", "notificationList": [
"urn:smn:region:68438a86d98e427e907e0097b7e35d48:sd"
] } ],
"alarm_action_begin_time": "00:00",
"alarm_action_end_time": "23:59", "alarm_id":"al1498096535573r8DNy7Gyk", "update_time":1498100100000,
"alarm_state":"alarm"
} ] }
返回值
● 正常 200
● 异常
返回值 说明
400 Bad Request 请求错误。
401 Unauthorized 未提供认证信息,或认证信息错误。
403 Forbidden 请求页面被禁止访问。
408 Request Timeout 请求超出了服务器的等待时间。
429 Too Many
Requests 当前请求过多。
500 Internal Server
Error 请求未完成,服务异常。
503 Service
Unavailable 系统暂时不可用,请求受限。
错误码
请参考返回错误码说明。
5.3.3 启停告警规则
功能介绍
启动或停止一条告警规则。
调试
您可以在API Explorer中调试该接口。
URI
PUT /V1.0/{project_id}/alarms/{alarm_id}/action
● 参数说明
表5-34 参数说明
名称 是否必选 说明
project_id 是 项目ID。
获取方式请参见获取项目ID。
alarm_id 是 告警规则的ID。
● 样例
PUT https://{云监控的endpoint}/V1.0/{project_id}/alarms/al1441967036681YkazZ0deN/action
请求消息
● 请求参数
表5-35 请求参数
名称 是否必选 参数类型 说明
alarm_enabled 是 Boolean 告警是否启用。
● true:启动
● false:停止
● 请求样例
{ "alarm_enabled":true }
响应消息
无消息体
返回值
● 正常 204
● 异常
返回值 说明
400 Bad Request 请求错误。
401 Unauthorized 未提供认证信息,或认证信息错误。
403 Forbidden 请求页面被禁止访问。
408 Request Timeout 请求超出了服务器的等待时间。
429 Too Many
Requests 当前请求过多。
返回值 说明 500 Internal Server
Error 请求未完成,服务异常。
503 Service
Unavailable 系统暂时不可用,请求受限。
错误码
请参考返回错误码说明。
5.3.4 删除告警规则
功能介绍
删除一条告警规则。
调试
您可以在API Explorer中调试该接口。
URI
DELETE /V1.0/{project_id}/alarms/{alarm_id}
● 参数说明
表5-36 参数说明
名称 是否必选 说明
project_id 是 项目ID。
获取方式请参见获取项目ID。
alarm_id 是 告警规则的ID。
● 样例
DELETE https://{云监控的endpoint}/V1.0/{project_id}/alarms/al1441967036681YkazZ0deN
请求消息
无请求体
响应消息
无消息体
返回值
● 正常
204
● 异常
返回值 说明
400 Bad Request 请求错误。
401 Unauthorized 未提供认证信息,或认证信息错误。
403 Forbidden 请求页面被禁止访问。
408 Request Timeout 请求超出了服务器的等待时间。
429 Too Many
Requests 当前请求过多。
500 Internal Server
Error 请求未完成,服务异常。
503 Service
Unavailable 系统暂时不可用,请求受限。
错误码
请参考返回错误码说明。
5.3.5 创建告警规则
功能介绍
创建一条告警规则。
调试
您可以在API Explorer中调试该接口。
URI
POST /V1.0/{project_id}/alarms
● 参数说明
表5-37 参数说明
名称 是否必选 说明
project_id 是 项目ID。
获取方式请参见获取项目ID。
● 样例
POST https://{云监控的endpoint}/V1.0/{project_id}/alarms
请求消息
● 请求参数
表5-38 请求参数
名称 是否必选 参数类型 说明
alarm_name 是 String 告警名称,只能包含0-9/a-z/A- Z/_/-或汉字,长度1-128。
alarm_descripti
on 否 String 告警描述,长度0-256。
metric 是 Object 告警指标。
详细参数请参见表5-39。
condition 是 Object 告警触发条件。
详细参数请参见表5-44。
alarm_enabled 否 Boolean 是否启用该条告警,默认为true。
alarm_action_e
nabled 否 Boolean 是否启用该条告警触发的动作,默 认为true。
说明若alarm_action_enabled为true,对应 的alarm_actions、
insufficientdata_actions(该参数已废 弃,建议无需配置)、ok_actions至少 有一个不能为空。
若alarm_actions、
insufficientdata_actions(该参数已废 弃,建议无需配置)、ok_actions同时 存在时,notificationList值保持一致。
enterprise_proj
ect_id 否 String 企业项目ID。
默认值为0,表示默认的企业项目 default。
如何查询企业项目ID,请参考获取 企业项目ID。
alarm_level 否 Integer 告警级别,默认为2,级别为1、
2、3、4。分别对应紧急、重要、
次要、提示。
alarm_type 否 String 告警类型。
● 针对事件类型的告警时,告警类 型为EVENT.SYS(系统事件)或 EVENT.CUSTOM(自定义事 件)。
● 针对资源分组的告警时,告警类 型为RESOURCE_GROUP。
● 针对指定资源的告警时,告警类 型为MULTI_INSTANCE。
名称 是否必选 参数类型 说明 alarm_actions 否 Arrays of
objects 告警触发的动作。
结构样例如下:
{
"type":
"notification","notificationList":
["urn:smn:region:
68438a86d98e427e907e0097b7e3 5d47:sd"]
}
详细参数请参见表5-41。
ok_actions 否 Arrays of
objects 告警恢复触发的动作。
结构如下:
{ "type":
"notification","notificationList":
["urn:smn:region:
68438a86d98e427e907e0097b7e3 5d47:sd"] }
详细参数请参见表5-42。
insufficientdata
_actions 否 Arrays of
objects 数据不足触发的动作(该参数已废 弃,建议无需配置)。
结构如下:
{ "type":
"notification","notificationList":
["urn:smn:region:
68438a86d98e427e907e0097b7e3 5d47:sd"] }
详细参数请参见表5-43。
表5-39 metric 字段数据结构说明
名称 是否必选 参数类型 说明
namespace 是 String 服务的命名空间,各服务命名空间 请参考支持监控的服务列表。
格式为service.item;service和item 必须是字符串,必须以字母开头,
只能包含0-9/a-z/A-Z/_,
service.item总长度最短为3,最大 为32。
说明当alarm_type为(EVENT.SYS|
EVENT.CUSTOM)时允许为空。
名称 是否必选 参数类型 说明 dimensions 否 Arrays of
objects 指标维度列表,如果不使用
resource_group_id,则dimensions 值必填。
详细参数请参见表5-40。
metric_name 是 String 指标名称,必须以字母开头,只能 包含0-9/a-z/A-Z/_,长度最短为 1,最大为64。
具体指标名请参见查询指标列表中 查询出的指标名。
resource_group
_id 否 String 创建告警规则时选择的资源分组
ID,如:
rg1603786526428bWbVmk4rP 说明
如果根据资源分组创建告警规则,则 resource_group_id不能为空,
dimensions中至少指定一个维度信息,
name不能为空,且alarm_type值为 RESOURCE_GROUP。
表5-40 dimensions 字段数据结构说明
名称 是否必选 参数类型 说明
name 是 String 监控维度名称,例如弹性云服务器
的维度为instance_id。各服务维度 请参考支持监控的服务列表,可参 考维度中key字段。
必须以字母开头,只能包含0-9/a- z/A-Z/_/-,长度最短为1,最大为 32。
value 是 String 维度取值,例如弹性云服务器的 ID。
必须以字母或数字开头,只能包含 0-9/a-z/A-Z/_/-,长度最短为1,最 大为256。
表5-41 alarm_actions 字段数据结构说明
名称 是否必选 参数类型 说明
type 是 String 告警通知类型,取值如下:
● notification:通知。
● autoscaling:弹性伸缩。
名称 是否必选 参数类型 说明 notificationList 是 Arrays of
strings 告警状态发生变化时,被通知对象 的列表。通知对象ID最多可以配置 5个。topicUrn可从SMN获取,具 体操作请参考查询Topic列表。
当type为notification时,
notificationList列表不能为空;当 type为autoscaling时,列表必须为 []。
说明
● 若要使Auto Scaling告警规则生 效,必须绑定伸缩策略,具体操作 请参考创建弹性伸缩策略。
● 若alarm_action_enabled为true,
对应的alarm_actions、
insufficientdata_actions(该参数 已废弃,建议无需配置)、
ok_actions至少有一个不能为空。
● 若alarm_actions、
insufficientdata_actions(该参数 已废弃,建议无需配置)、
ok_actions同时存在时,
notificationList值保持一致。
● 被通知对象的ID列表的参数类型为 字符串。
表5-42 ok_actions 字段数据结构说明
名 是否必选 参数类型 说明
type 是 String 告警恢复触发告警通知类型,取值
如下:
● notification:通知。
● autoscaling:弹性伸缩。
notificationList 是 Arrays of
objects 告警状态发生变化时,被通知对象 的列表,通知对象列表为字符串。
列表最长为5。topicUrn可从SMN 获取,具体操作请参考查询Topic列 表。
说明若alarm_action_enabled为true,对应 的alarm_actions、
insufficientdata_actions(该参数已废 弃,建议无需配置)、ok_actions至少 有一个不能为空。
若alarm_actions、
insufficientdata_actions(该参数已废 弃,建议无需配置)、ok_actions同时 存在时,notificationList值保持一致。