PutResourceMetricRule - 为指定资源的指定监控项设置一条阈值报警规则

更新时间:
复制为 MD 格式

设置报警规则

接口说明

本文将提供一个示例,为云服务器 ECS acs_ecs_dashboard的实例i-uf6j91r34rnwawoo****中的监控项cpu_total设置阈值报警规则。该报警规则的报警联系组为ECS_Group、报警规则名称为test123、报警规则 ID 为a151cd6023eacee2f0978e03863cc1697c89508****、Critical 级别的统计方法为Average、Critical 级别的比较符为GreaterThanOrEqualToThreshold、Critical 级别的阈值为90和 Critical 级别的报警重试次数为3

说明

2024-08-15 增加 Statistics 校验,统计值只能填对应指标的 Statistics。关于如何获取该参数的取值,请参见云产品监控项

调试

您可以在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

资源信息,例如:[{"instanceId":"i-uf6j91r34rnwawoo****"}][{"userId":"100931896542****"}]

关于资源信息支持的维度 Dimensions,请参见云产品监控项

[{"instanceId":"i-uf6j91r34rnwawoo****"}]

ContactGroups

string

报警联系组。报警通知会发送给该报警联系组中的报警联系人。

说明

报警联系组是一组报警联系人,可以包含一个或多个报警联系人。关于如何创建报警联系人和报警联系组,请参见 PutContactPutContactGroup

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 级别报警统计方法。

该参数的取值由指定云产品的MetricName对应的Statistics列决定,例如:Maximum、Minimum 和 Average。关于如何获取该参数的取值,请参见云产品监控项

说明

报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。

Average

Escalations.Critical.ComparisonOperator

string

Critical 级别阈值比较符。取值:

  • GreaterThanOrEqualToThreshold:大于等于。

  • GreaterThanThreshold:大于。

  • LessThanOrEqualToThreshold:小于等于。

  • LessThanThreshold:小于。

  • NotEqualToThreshold:不等于。

  • EqualToThreshold:等于。

  • GreaterThanYesterday:同比昨天时间上涨。

  • LessThanYesterday:同比昨天时间下降。

  • GreaterThanLastWeek:同比上周同一时间上涨。

  • LessThanLastWeek:同比上周同一时间下降。

  • GreaterThanLastPeriod:环比上周期上涨。

  • LessThanLastPeriod:环比上周期下降。

说明

报警级别 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 级别报警统计方法。

该参数的取值由指定云产品的MetricName对应的Statistics列决定,例如:Maximum、Minimum 和 Average。关于如何获取该参数的取值,请参见云产品监控项

说明

报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。

Average

Escalations.Warn.ComparisonOperator

string

Warn 级别阈值比较符。取值:

  • GreaterThanOrEqualToThreshold:大于等于。

  • GreaterThanThreshold:大于。

  • LessThanOrEqualToThreshold:小于等于。

  • LessThanThreshold:小于。

  • NotEqualToThreshold:不等于。

  • EqualToThreshold:等于。

  • GreaterThanYesterday:同比昨天时间上涨。

  • LessThanYesterday:同比昨天时间下降。

  • GreaterThanLastWeek:同比上周同一时间上涨。

  • LessThanLastWeek:同比上周同一时间下降。

  • GreaterThanLastPeriod:环比上周期上涨。

  • LessThanLastPeriod:环比上周期下降。

说明

报警级别 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 级别报警统计方法。

该参数的取值由指定云产品的MetricName对应的Statistics列决定,例如:Maximum、Minimum 和 Average。关于如何获取该参数的取值,请参见云产品监控项

说明

报警级别 Critical(严重)、Warn(警告)或 Info(信息)至少设置一个,且该报警级别中的参数 Statistics、ComparisonOperator、Threshold 和 Times 必须同时设置。

Average

Escalations.Info.ComparisonOperator

string

Info 级别阈值比较符。取值:

  • GreaterThanOrEqualToThreshold:大于等于。

  • GreaterThanThreshold:大于。

  • LessThanOrEqualToThreshold:小于等于。

  • LessThanThreshold:小于。

  • NotEqualToThreshold:不等于。

  • EqualToThreshold:等于。

  • GreaterThanYesterday:同比昨天时间上涨。

  • LessThanYesterday:同比昨天时间下降。

  • GreaterThanLastWeek:同比上周同一时间上涨。

  • LessThanLastWeek:同比上周同一时间下降。

  • GreaterThanLastPeriod:环比上周期上涨。

  • LessThanLastPeriod:环比上周期下降。

说明

报警级别 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(默认值):不做任何处理。

  • INSUFFICIENT_DATA:报警内容为无数据。

  • OK:正常。

KEEP_LAST_STATE

CompositeExpression

object

多指标的报警条件。

说明

单指标和多指标互斥,不能同时设置。

ExpressionList

array<object>

标准创建的报警条件列表。

object

无。

MetricName

string

云产品的监控项名称。

cpu_total

Period

integer

监控项的聚合周期。

单位:秒。

60

Statistics

string

监控项的统计方法。取值:

  • $Maximum:最大值。

  • $Minimum:最小值。

  • $Average:平均值。

  • $Availability:可用率(通常用于站点监控)。

说明

$为监控项的统一前缀符号。支持的云产品,请参见云产品监控项

$Maximum

ComparisonOperator

string

阈值比较符。取值:

  • GreaterThanOrEqualToThreshold:大于等于。

  • GreaterThanThreshold:大于。

  • LessThanOrEqualToThreshold:小于等于。

  • LessThanThreshold:小于。

  • NotEqualToThreshold:不等于。

  • EqualToThreshold:等于。

  • GreaterThanYesterday:同比昨天时间上涨。

  • LessThanYesterday:同比昨天时间下降。

  • GreaterThanLastWeek:同比上周同一时间上涨。

  • LessThanLastWeek:同比上周同一时间下降。

  • GreaterThanLastPeriod:环比上周期上涨。

  • LessThanLastPeriod:环比上周期下降。

GreaterThanOrEqualToThreshold

Threshold

string

报警阈值。

90

ExpressionListJoin

string

多指标报警条件之间的关系。取值:

  • &&:当所有指标都符合报警条件时,才触发报警。当 ExpressionList 下各表达式均为true时,才触发报警。

  • ||:其中一个指标符合报警条件,即触发报警。

||

ExpressionRaw

string

表达式创建的报警条件。包括但不限于以下情况:

  • 为部分资源设置报警黑名单,例如:$instanceId != 'i-io8kfvcpp7x5****' ``&&`` $Average > 50,表示当报警规则中的实例i-io8kfvcpp7x5****Average大于 50 时,也不会产生报警。

  • 对规则中的指定实例设置特殊报警阈值,例如:$Average > ($instanceId == 'i-io8kfvcpp7x5****'? 80: 50),表示当报警规则中的实例i-io8kfvcpp7x5****Average大于 80 时,才报警,其他实例的Average大于 50,即可报警。

  • 对规则中超过阈值的实例数量进行限制,例如:count($Average > 20) > 3,表示当报警规则中的Average大于 20 的实例数大于 3 个时,才进行报警。

$Average > ($instanceId == 'i-io8kfvcpp7x5****'? 80: 50)

Level

string

报警级别。取值:

  • CRITICAL:严重。

  • WARN:警告。

  • INFO:信息。

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:严重。

  • WARN:警告。

  • INFO:信息。

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 }} }

SendOK

boolean

是否发送恢复通知

true

关于公共请求参数的详情,请参见公共参数

返回参数

名称

类型

描述

示例值

object

无。

Code

string

状态码。

说明

200 表示成功。

200

Message

string

错误信息。

The request processing has failed due to some unknown error.

RequestId

string

请求 ID。

65D50468-ECEF-48F1-A6E1-D952E89D9436

Success

boolean

操作是否成功。取值:

  • true:成功。

  • false:失败。

true

示例

正常返回示例

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

错误码

错误信息

描述

400 %s %s
499 %s %s
500 InternalError The request processing has failed due to some unknown error.
204 %s %s
403 %s %s
206 %s %s
404 %s %s
503 %s %s
406 %s %s
429 ResourceOverLimit The resource has exceeded the limit. %s 超过数量限制。

访问错误中心查看更多错误码。

变更历史

更多信息,参考变更详情