设置报警规则
接口说明
本文将提供一个示例,为云服务器 ECS acs_ecs_dashboard的实例i-uf6j91r34rnwawoo****中的监控项cpu_total设置阈值报警规则。该报警规则的报警联系组为ECS_Group、报警规则名称为test123、报警规则 ID 为a151cd6023eacee2f0978e03863cc1697c89508****、Critical 级别的统计方法为Average、Critical 级别的比较符为GreaterThanOrEqualToThreshold、Critical 级别的阈值为90和 Critical 级别的报警重试次数为3。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:- 对于必选的资源类型,用前面加 * 表示。
- 对于不支持资源级授权的操作,用全部资源表示。
 
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
| 操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 | 
|---|---|---|---|---|
| cms:PutResourceMetricRule | create | *全部资源 * | 
 | 无 | 
请求参数
| 名称 | 类型 | 必填 | 描述 | 示例值 | 
|---|---|---|---|---|
| RuleId | string | 是 | 报警规则 ID。 您可以输入新的报警规则 ID,也可以使用云监控已存在的报警规则 ID。关于如何查询报警规则 ID,请参见 DescribeMetricRuleList 。 说明 
输入新的报警规则 ID,表示创建一条阈值报警规则。
 | a151cd6023eacee2f0978e03863cc1697c89508**** | 
| RuleName | string | 是 | 报警规则名称。 您可以输入新的报警规则名称,也可以使用云监控已存在的报警规则名称。关于如何查询报警规则名称,请参见 DescribeMetricRuleList 。 说明 
输入新的报警规则名称,表示创建一条阈值报警规则。
 | test123 | 
| Namespace | string | 是 | 云产品的数据命名空间。关于如何查询云产品的数据命名空间,请参见云产品监控项。 说明 
当您为企业云监控创建 Prometheus 报警规则时,该参数必须为 acs_prometheus。 | acs_ecs_dashboard | 
| MetricName | string | 是 | 监控项名称。关于如何查询监控项名称,请参见云产品监控项。 说明 
当您为企业云监控创建 Prometheus 报警规则时,该参数为指标仓库名称。关于如何获取指标仓库名称,请参见 DescribeHybridMonitorNamespaceList 。
 | cpu_total | 
| Resources | string | 是 | 资源信息,例如: 关于资源信息支持的维度 Dimensions,请参见云产品监控项。 | [{"instanceId":"i-uf6j91r34rnwawoo****"}] | 
| ContactGroups | string | 是 | 报警联系组。报警通知会发送给该报警联系组中的报警联系人。 说明 
报警联系组是一组报警联系人,可以包含一个或多个报警联系人。关于如何创建报警联系人和报警联系组,请参见 PutContact 和 PutContactGroup 。
 | ECS_Group | 
| Webhook | string | 否 | 报警发生回调时指定的 URL 地址,向 URL 发送 POST 请求。 | https://alert.aliyun.com.com:8080/callback | 
| EffectiveInterval | string | 否 | 报警规则的生效时间范围。 | 00:00-23:59 | 
| NoEffectiveInterval | string | 否 | 报警规则的失效时间范围。 | 00:00-06:00 | 
| SilenceTime | integer | 否 | 通道沉默周期。单位:秒,默认值:86400。 说明 
通道沉默周期是指报警发生后未恢复正常,间隔多久重新发送一次报警通知。
 | 86400 | 
| Period | string | 否 | 监控项的统计周期。单位:秒。默认为监控项的原始上报周期。 说明 
关于如何查询监控项的统计周期,请参见云产品监控项。
 | 60 | 
| Interval | string | 否 | 报警规则的触发周期。单位:秒。 说明 
关于如何查询监控项的统计周期,请参见云产品监控项。
 | 60 | 
| EmailSubject | string | 否 | 报警邮件主题。 | ECS实例报警 | 
| Escalations.Critical.Statistics | string | 否 | Critical 级别报警统计方法。 该参数的取值由指定云产品的 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | Average | 
| Escalations.Critical.ComparisonOperator | string | 否 | Critical 级别阈值比较符。取值: 
 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | GreaterThanOrEqualToThreshold | 
| Escalations.Critical.Threshold | string | 否 | Critical 级别报警阈值。 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | 90 | 
| Escalations.Critical.Times | integer | 否 | Critical 级别报警重试次数。 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | 3 | 
| Escalations.Warn.Statistics | string | 否 | Warn 级别报警统计方法。 该参数的取值由指定云产品的 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | Average | 
| Escalations.Warn.ComparisonOperator | string | 否 | Warn 级别阈值比较符。取值: 
 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | GreaterThanOrEqualToThreshold | 
| Escalations.Warn.Threshold | string | 否 | Warn 级别报警阈值。 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | 90 | 
| Escalations.Warn.Times | integer | 否 | Warn 级别报警重试次数。 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | 3 | 
| Escalations.Info.Statistics | string | 否 | Info 级别报警统计方法。 该参数的取值由指定云产品的 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | Average | 
| Escalations.Info.ComparisonOperator | string | 否 | Info 级别阈值比较符。取值: 
 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | GreaterThanOrEqualToThreshold | 
| Escalations.Info.Threshold | string | 否 | Info 级别报警阈值。 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | 90 | 
| Escalations.Info.Times | integer | 否 | Info 级别报警重试次数。 说明 
报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。
 | 3 | 
| NoDataPolicy | string | 否 | 无监控数据时报警的处理方式。取值: 
 | KEEP_LAST_STATE | 
| CompositeExpression | object | 否 | 多指标的报警条件。 说明 
单指标和多指标互斥,不能同时设置。
 | |
| ExpressionList | array<object> | 否 | 标准创建的报警条件列表。 | |
| object | 否 | 无。 | ||
| MetricName | string | 否 | 云产品的监控项名称。 | cpu_total | 
| Period | long | 否 | 监控项的聚合周期。 单位:秒。 | 60 | 
| Statistics | string | 否 | 监控项的统计方法。取值: 
 说明 
 $为监控项的统一前缀符号。支持的云产品,请参见云产品监控项。 | $Maximum | 
| ComparisonOperator | string | 否 | 阈值比较符。取值: 
 | GreaterThanOrEqualToThreshold | 
| Threshold | string | 否 | 报警阈值。 | 90 | 
| ExpressionListJoin | string | 否 | 多指标报警条件之间的关系。取值: 
 | || | 
| ExpressionRaw | string | 否 | 表达式创建的报警条件。包括但不限于以下情况: 
 | $Average > ($instanceId == 'i-io8kfvcpp7x5****'? 80: 50) | 
| Level | string | 否 | 报警级别。取值: 
 | CRITICAL | 
| Times | integer | 否 | 发出报警通知需要达到报警条件的次数。 | 3 | 
| Labels | array<object> | 否 | 当监控项达到报警条件并进行报警时,标签同时写入监控项,在报警通知中进行展示。 说明 
该功能与 Prometheus 报警中的 Label 相同。
 | |
| object | 否 | 无。 | ||
| Key | string | 否 | 标签键。 | tagKey1 | 
| Value | string | 否 | 标签值。 说明 
标签值支持模板参数,将模板参数替换为实际标签值。
 | ECS | 
| Prometheus | object | 否 | Prometheus 报警。 说明 
仅当您为企业云监控创建 Prometheus 报警规则,需要设置该参数。
 | |
| PromQL | string | 否 | PromQL 查询语句。 说明 
通过 PromQL 查询语句获取的数据即为报警数据,请您在该语句中携带报警阈值。
 | cpuUsage{instanceId="xxxx"}[1m]>90 | 
| Level | string | 否 | 报警级别。取值: 
 | CRITICAL | 
| Times | integer | 否 | 发出报警通知需要达到报警条件的次数。 | 3 | 
| Annotations | array<object> | 否 | Prometheus 报警时,将注释的键和值进行渲染,易于您对监控项或报警规则的理解。 说明 
该功能等同于 Prometheus 的 Annotation。
 | |
| object | 否 | 无。 | ||
| Key | string | 否 | 注释的键。 | summary | 
| Value | string | 否 | 注释的值。 | {{ $labels.instance }} CPU usage above 10% {current value: {{ humanizePercentage $value }} } | 
关于公共请求参数的详情,请参见公共参数。
返回参数
示例
正常返回示例
JSON格式
{
  "Code": 200,
  "Message": "The request processing has failed due to some unknown error.",
  "RequestId": "65D50468-ECEF-48F1-A6E1-D952E89D9436",
  "Success": true
}错误码
| HTTP status code | 错误码 | 错误信息 | 描述 | 
|---|---|---|---|
| 204 | %s | %s | - | 
| 429 | ResourceOverLimit | The resource has exceeded the limit. %s | 超过数量限制。 | 
| 500 | InternalError | The request processing has failed due to some unknown error. | - | 
访问错误中心查看更多错误码。
变更历史
| 变更时间 | 变更内容概要 | 操作 | 
|---|---|---|
| 2024-04-01 | OpenAPI 错误码发生变更 | 查看变更详情 | 
| 2022-12-26 | OpenAPI 错误码发生变更 | 查看变更详情 | 
| 2022-08-05 | OpenAPI 错误码发生变更 | 查看变更详情 | 
