DescribeMetricRuleList - 查询报警规则列表中的所有规则

查询报警规则列表中的所有规则。

接口说明

本文将提供一个示例,查询当前阿里云账号下的报警规则列表中的所有报警规则。返回结果显示,报警规则列表中只有一条报警规则,该报警规则的名称为Rule_01、ID 为applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

当前API暂无授权信息透出。

请求参数

名称

类型

必填

描述

示例值

MetricName

string

监控项名称。

关于如何获取监控项名称,请参见 DescribeMetricMetaList云产品监控项

cpu_total

EnableState

boolean

报警规则的启用状态。取值:

  • true:启用。

  • false:禁用。

true

Namespace

string

云产品的命名空间。

关于如何获取云产品的命名空间,请参见 DescribeMetricMetaList云产品监控项

acs_ecs_dashboard

Page

integer

页码。

起始值:1。默认值:1。

1

PageSize

integer

分页时每页显示的数据行数。

起始值:1。默认值:10。

10

AlertState

string

报警规则状态。取值:

  • OK:正常。

  • ALARM:报警。

  • INSUFFICIENT_DATA:无数据。

OK

Dimensions

string

指定资源的监控维度。

格式:key:value键值对形式的集合,例如:{"userId":"120886317861****"}{"instanceId":"i-2ze2d6j5uhg20x47****"}

{"instanceId":"i-2ze2d6j5uhg20x47****"}

RuleName

string

报警规则名称。

该参数支持模糊查询。

Rule_01

GroupId

string

应用分组 ID。

关于如何获取应用分组 ID,请参见 DescribeMonitorGroups

7301****

RuleIds

string

报警规则 ID。多个报警规则 ID 之间用半角逗号(,)分隔,一次最多可查询 20 条。

applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****

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

返回参数

名称

类型

描述

示例值

object

无。

Code

integer

状态码。

说明

200 表示成功。

200

Message

string

错误信息。

The specified resource is not found.

RequestId

string

请求 ID。

386C6712-335F-5054-930A-CC92B851ECBA

Total

string

总记录数。

1

Success

boolean

操作是否成功。取值:

  • true:成功。

  • false:失败。

true

Alarms

object

Alarm

array<object>

报警规则列表。

array<object>

无。

SilenceTime

integer

通道沉默周期。单位:秒。默认值:86400,最小值:3600。

监控数据持续超过报警规则阈值时,每个沉默周期内只发送一次报警通知。

86400

MetricName

string

监控项名称。

cpu_total

Webhook

string

报警发生回调时的 URL 地址。云监控会将报警信息通过 POST 请求推送到该地址,目前仅支持 HTTP 协议。

https://www.aliyun.com

ContactGroups

string

报警联系组。

ECS_Alarm

SourceType

string

报警规则类型。取值:METRIC,表示时序指标报警规则。

METRIC

Namespace

string

云服务的命名空间。

acs_ecs_dashboard

MailSubject

string

报警邮件主题。

"${serviceType}-${metricName}-${levelDescription}通知(${dimensions})"

NoEffectiveInterval

string

报警规则的失效时间范围。

00:00-05:30

EffectiveInterval

string

报警规则的生效时间范围。

05:31-23:59

RuleName

string

报警规则名称。

Rule_01

AlertState

string

报警规则状态。取值:

  • OK:正常。

  • ALARM:报警。

  • INSUFFICIENT_DATA:无数据。

OK

Period

string

统计周期。

60

RuleId

string

报警规则 ID。

applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****

GroupName

string

应用分组名称。

说明

如果报警规则关联到应用分组,此处显示该参数。

ECS_Group

GroupId

string

应用分组 ID。

7301****

Dimensions

string

报警规则维度。

[{"instanceId":"i-2ze2d6j5uhg20x47****"}]

EnableState

boolean

启用状态。取值:

  • true:启用。

  • false:禁用。

true

Resources

string

报警规则关联的资源。

[{\"instanceId\":\"i-2ze2d6j5uhg20x47****\"}]

Escalations

object

报警分级别触发条件。

Info

object

Info 级别报警触发条件。

ComparisonOperator

string

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

  • GreaterThanOrEqualToThreshold:大于等于。

  • GreaterThanThreshold:大于。

  • LessThanOrEqualToThreshold:小于等于。

  • LessThanThreshold:小于。

  • NotEqualToThreshold:不等于。

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

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

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

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

  • GreaterThanLastPeriod:环比上周期上涨。

  • LessThanLastPeriod:环比上周期下降。

GreaterThanOrEqualToThreshold

PreCondition

string

Info 级别报警的前置条件。当参数 ComparisonOperator 设置为同比或环比时,与该参数共同起作用。

例如:该参数设置为$Average>80,ComparisonOperator 设置为 GreaterThanYesterday,Threshold 设置为 10,表示当平均值大于 80 且环比昨天上涨 10%时,触发报警。

说明

$Average>0 中的$Average 为一个占位符,格式为$监控结果字段值,云监控会将其替换为对应的统计值或原始的监控值。

$Average>80

Times

integer

Info 级别报警连续出现次数。报警连续出现这个次数,且超过阈值才会触发报警。

3

Threshold

string

Info 级别报警阈值。

90

Statistics

string

Info 级别报警统计方法。

Average

Warn

object

Warn 级别报警触发条件。

ComparisonOperator

string

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

  • GreaterThanOrEqualToThreshold:大于等于。

  • GreaterThanThreshold:大于。

  • LessThanOrEqualToThreshold:小于等于。

  • LessThanThreshold:小于。

  • NotEqualToThreshold:不等于。

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

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

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

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

  • GreaterThanLastPeriod:环比上周期上涨。

  • LessThanLastPeriod:环比上周期下降。

GreaterThanOrEqualToThreshold

PreCondition

string

Warn 级别报警的前置条件。当参数 ComparisonOperator 设置为同比或环比时,与该参数共同起作用。

例如:该参数设置为$Average>80,ComparisonOperator 设置为 GreaterThanYesterday,Threshold 设置为 10,表示当平均值大于 80 且环比昨天上涨 10%时,触发报警。

说明

$Average>0 中的$Average 为一个占位符,格式为$监控结果字段值,云监控会将其替换为对应的统计值或原始的监控值。

$Average>80

Times

integer

Warn 级别报警连续出现次数。报警连续出现这个次数,且超过阈值才会触发报警。

3

Threshold

string

Warn 级别报警阈值。

90

Statistics

string

Warn 级别报警统计方法。

Average

Critical

object

Critical 级别报警触发条件。

ComparisonOperator

string

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

  • GreaterThanOrEqualToThreshold:大于等于。

  • GreaterThanThreshold:大于。

  • LessThanOrEqualToThreshold:小于等于。

  • LessThanThreshold:小于。

  • NotEqualToThreshold:不等于。

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

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

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

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

  • GreaterThanLastPeriod:环比上周期上涨。

  • LessThanLastPeriod:环比上周期下降。

GreaterThanOrEqualToThreshold

PreCondition

string

Critical 级别报警的前置条件。当参数 ComparisonOperator 设置为同比或环比时,与该参数共同起作用。

例如:该参数设置为$Average>80,ComparisonOperator 设置为 GreaterThanYesterday,Threshold 设置为 10,表示当平均值大于 80 且环比昨天上涨 10%时,触发报警。

说明

$Average>0 中的$Average 为一个占位符,格式为$监控结果字段值,云监控会将其替换为对应的统计值或原始的监控值。

$Average>80

Times

integer

Critical 级别报警连续出现次数。报警连续出现这个次数,且超过阈值才会触发报警。

3

Threshold

string

Critical 级别报警阈值。

90

Statistics

string

Critical 级别报警统计方法。

Average

NoDataPolicy

string

无监控数据时报警的处理方式。取值:

  • KEEP_LAST_STATE(默认值):不做任何处理。

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

  • OK:正常。

KEEP_LAST_STATE

CompositeExpression

object

多指标的报警条件。

说明

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

Level

string

报警级别。取值:

  • CRITICAL:严重。

  • WARN:警告。

  • INFO:信息。

CRITICAL

ExpressionList

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:不等于。

  • 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)

Times

integer

发出报警通知需要达到报警条件的次数。

3

Labels

object

Labels

array<object>

报警规则标签。

object

无。

Key

string

报警规则的标签键。

cmsRuleKey

Value

string

报警规则的标签值。

cmsRuleValue

Prometheus

object

Prometheus 报警。

说明

仅当您为企业云监控创建 Prometheus 报警规则,需要设置该参数。

PromQL

string

PromQL 查询语句。

说明

通过 PromQL 查询语句获取的数据即为报警数据,请您在该语句中携带报警阈值。

CpuUsage{instanceId="xxxx"}[1m]>90

Level

string

报警级别。取值:

  • CRITICAL:严重。

  • WARN:警告。

  • INFO:信息。

CRITICAL

Times

integer

发出报警通知需要达到报警条件的次数。

3

Annotations

object

Annotations

array<object>

Prometheus 报警时,将注释的键和值进行渲染,易于您对监控项或报警规则的理解。

说明

该功能等同于 Prometheus 的 Annotation。

object

无。

Key

string

注释的键。

summary

Value

string

注释的值。

{{ $labels.instance }} CPU usage above 10% {current value: {{ humanizePercentage $value }} }

ProductCategory

string

云产品类型。

slb

GmtCreate

integer

规则创建时间,Unix 时间戳。

1760432061000

GmtUpdate

string

规则更新时间,Unix 时间戳。

1760432061000

示例

正常返回示例

JSON格式

{
  "Code": 200,
  "Message": "The specified resource is not found.",
  "RequestId": "386C6712-335F-5054-930A-CC92B851ECBA",
  "Total": "1",
  "Success": true,
  "Alarms": {
    "Alarm": [
      {
        "SilenceTime": 86400,
        "MetricName": "cpu_total",
        "Webhook": "https://www.aliyun.com",
        "ContactGroups": "ECS_Alarm",
        "SourceType": "METRIC",
        "Namespace": "acs_ecs_dashboard",
        "MailSubject": "\"${serviceType}-${metricName}-${levelDescription}通知(${dimensions})\"",
        "NoEffectiveInterval": "00:00-05:30",
        "EffectiveInterval": "05:31-23:59",
        "RuleName": "Rule_01",
        "AlertState": "OK",
        "Period": "60",
        "RuleId": "applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****",
        "GroupName": "ECS_Group",
        "GroupId": "7301****",
        "Dimensions": "[{\"instanceId\":\"i-2ze2d6j5uhg20x47****\"}]",
        "EnableState": true,
        "Resources": "[{\\\"instanceId\\\":\\\"i-2ze2d6j5uhg20x47****\\\"}]",
        "Escalations": {
          "Info": {
            "ComparisonOperator": "GreaterThanOrEqualToThreshold",
            "PreCondition": "$Average>80",
            "Times": 3,
            "Threshold": "90",
            "Statistics": "Average"
          },
          "Warn": {
            "ComparisonOperator": "GreaterThanOrEqualToThreshold",
            "PreCondition": "$Average>80",
            "Times": 3,
            "Threshold": "90",
            "Statistics": "Average"
          },
          "Critical": {
            "ComparisonOperator": "GreaterThanOrEqualToThreshold",
            "PreCondition": "$Average>80",
            "Times": 3,
            "Threshold": "90",
            "Statistics": "Average"
          }
        },
        "NoDataPolicy": "KEEP_LAST_STATE",
        "CompositeExpression": {
          "Level": "CRITICAL",
          "ExpressionList": {
            "ExpressionList": [
              {
                "MetricName": "cpu_total",
                "Period": 60,
                "Statistics": "$Maximum",
                "ComparisonOperator": "GreaterThanOrEqualToThreshold",
                "Threshold": "90"
              }
            ]
          },
          "ExpressionListJoin": "||",
          "ExpressionRaw": "$Average > ($instanceId == 'i-io8kfvcpp7x5****'? 80: 50)",
          "Times": 3
        },
        "Labels": {
          "Labels": [
            {
              "Key": "cmsRuleKey",
              "Value": "cmsRuleValue"
            }
          ]
        },
        "Prometheus": {
          "PromQL": "CpuUsage{instanceId=\"xxxx\"}[1m]>90",
          "Level": "CRITICAL",
          "Times": 3,
          "Annotations": {
            "Annotations": [
              {
                "Key": "summary",
                "Value": "{{ $labels.instance }} CPU usage above 10% {current value: {{ humanizePercentage $value }} }"
              }
            ]
          }
        },
        "ProductCategory": "slb",
        "GmtCreate": 1760432061000,
        "GmtUpdate": "1760432061000"
      }
    ]
  }
}

错误码

HTTP status code

错误码

错误信息

描述

400 InvalidParameter Invalid parameter. 参数错误
500 InternalError The request processing has failed due to some unknown error.
403 InvalidAuthorization The Request is not authorization.
404 ResourceNotFound The specified resource is not found. 未找到指定资源。

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

变更历史

更多信息,参考变更详情