调用DescribeMetricRuleList接口查询报警规则列表中的所有规则。
本文将提供一个示例,查询当前阿里云账号下的报警规则列表中的所有报警规则。返回结果显示,报警规则列表中只有一条报警规则,该报警规则的名称为Rule_01
、ID为applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****
。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | DescribeMetricRuleList | 要执行的操作,取值:DescribeMetricRuleList。 |
MetricName | String | 否 | cpu_total | 监控项名称。 关于如何获取监控项名称,请参见DescribeMetricMetaList或云产品监控项。 |
EnableState | Boolean | 否 | true | 报警规则的启用状态。取值:
|
Namespace | String | 否 | acs_ecs_dashboard | 云产品的命名空间。 关于如何获取云产品的命名空间,请参见DescribeMetricMetaList或云产品监控项。 |
Page | Integer | 否 | 1 | 页码。 起始值:1。默认值:1。 |
PageSize | Integer | 否 | 10 | 分页时每页显示的数据行数。 起始值:1。默认值:10。 |
AlertState | String | 否 | OK | 报警规则状态。取值:
|
Dimensions | String | 否 | {"instanceId":"i-2ze2d6j5uhg20x47****"} | 指定资源的监控维度。 格式: |
RuleName | String | 否 | Rule_01 | 报警规则名称。 该参数支持模糊查询。 |
GroupId | String | 否 | 7301**** | 应用分组ID。 关于如何获取应用分组ID,请参见DescribeMonitorGroups。 |
RuleIds | String | 否 | applyTemplate344cfd42-0f32-4fd6-805a-88d7908a**** | 报警规则ID。多个报警规则ID之间用半角逗号(,)分隔,一次最多可查询20条。 |
关于公共请求参数的详情,请参见公共参数。
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
Code | Integer | 200 | 状态码。 说明 200表示成功。 |
Message | String | The specified resource is not found. | 错误信息。 |
RequestId | String | 386C6712-335F-5054-930A-CC92B851ECBA | 请求ID。 |
Total | String | 1 | 总记录数。 |
Success | Boolean | true | 操作是否成功。取值:
|
Alarms | Array of Alarm | 报警规则列表。 |
|
Alarm | |||
SilenceTime | Integer | 86400 | 通道沉默周期。单位:秒。默认值:86400,最小值:3600。 监控数据持续超过报警规则阈值时,每个沉默周期内只发送一次报警通知。 |
MetricName | String | cpu_total | 监控项名称。 |
Webhook | String | https://www.aliyun.com | 报警发生回调时的URL地址。云监控会将报警信息通过POST请求推送到该地址,目前仅支持HTTP协议。 |
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 | 报警规则状态。取值:
|
Period | String | 60 | 统计周期。 |
RuleId | String | applyTemplate344cfd42-0f32-4fd6-805a-88d7908a**** | 报警规则ID。 |
GroupName | String | ECS_Group | 应用分组名称。 说明 如果报警规则关联到应用分组,此处显示该参数。 |
GroupId | String | 7301**** | 应用分组ID。 |
Dimensions | String | [{"instanceId":"i-2ze2d6j5uhg20x47****"}] | 报警规则维度。 |
EnableState | Boolean | true | 启用状态。取值:
|
Resources | String | [{\"instanceId\":\"i-2ze2d6j5uhg20x47****\"}] | 报警规则关联的资源。 |
Escalations | Object | 报警分级别触发条件。 |
|
Info | Object | Info级别报警触发条件。 |
|
ComparisonOperator | String | GreaterThanOrEqualToThreshold | Info级别阈值比较符。取值:
|
PreCondition | String | $Average>80 | Info级别报警的前置条件。当参数ComparisonOperator设置为同比或环比时,与该参数共同起作用。 例如:该参数设置为$Average>80,ComparisonOperator设置为GreaterThanYesterday,Threshold设置为10,表示当平均值大于80且环比昨天上涨10%时,触发报警。 说明 $Average>0中的$Average为一个占位符,格式为 $监控结果字段值 ,云监控会将其替换为对应的统计值或原始的监控值。 |
Times | Integer | 3 | Info级别报警连续出现次数。报警连续出现这个次数,且超过阈值才会触发报警。 |
Threshold | String | 90 | Info级别报警阈值。 |
Statistics | String | Average | Info级别报警统计方法。 |
Warn | Object | Warn级别报警触发条件。 |
|
ComparisonOperator | String | GreaterThanOrEqualToThreshold | Warn级别阈值比较符。取值:
|
PreCondition | String | $Average>80 | Warn级别报警的前置条件。当参数ComparisonOperator设置为同比或环比时,与该参数共同起作用。 例如:该参数设置为$Average>80,ComparisonOperator设置为GreaterThanYesterday,Threshold设置为10,表示当平均值大于80且环比昨天上涨10%时,触发报警。 说明 $Average>0中的$Average为一个占位符,格式为 $监控结果字段值 ,云监控会将其替换为对应的统计值或原始的监控值。 |
Times | Integer | 3 | Warn级别报警连续出现次数。报警连续出现这个次数,且超过阈值才会触发报警。 |
Threshold | String | 90 | Warn级别报警阈值。 |
Statistics | String | Average | Warn级别报警统计方法。 |
Critical | Object | Critical级别报警触发条件。 |
|
ComparisonOperator | String | GreaterThanOrEqualToThreshold | Critical级别阈值比较符。取值:
|
PreCondition | String | $Average>80 | Critical级别报警的前置条件。当参数ComparisonOperator设置为同比或环比时,与该参数共同起作用。 例如:该参数设置为$Average>80,ComparisonOperator设置为GreaterThanYesterday,Threshold设置为10,表示当平均值大于80且环比昨天上涨10%时,触发报警。 说明 $Average>0中的$Average为一个占位符,格式为 $监控结果字段值 ,云监控会将其替换为对应的统计值或原始的监控值。 |
Times | Integer | 3 | Critical级别报警连续出现次数。报警连续出现这个次数,且超过阈值才会触发报警。 |
Threshold | String | 90 | Critical级别报警阈值。 |
Statistics | String | Average | Critical级别报警统计方法。 |
NoDataPolicy | String | KEEP_LAST_STATE | 无监控数据时报警的处理方式。取值:
|
CompositeExpression | Object | 多指标的报警条件。 说明 单指标和多指标互斥,不能同时设置。 |
|
Level | String | Critical | 报警级别。取值:
|
ExpressionList | Array of ExpressionList | 标准创建的报警条件列表。 |
|
ExpressionList | |||
MetricName | String | cpu_total | 云产品的监控项名称。 |
ComparisonOperator | String | GreaterThanOrEqualToThreshold | 阈值比较符。取值:
|
Statistics | String | $Maximum | 监控项的统计方法。取值:
说明 $ 为监控项的统一前缀符号。支持的云产品,请参见云产品监控项。 |
Threshold | String | 90 | 报警阈值。 |
Period | Integer | 60 | 监控项的聚合周期。 单位:秒。 |
ExpressionListJoin | String | || | 多指标报警条件之间的关系。取值:
|
ExpressionRaw | String | $Average > ($instanceId == 'i-io8kfvcpp7x5****'? 80: 50) | 表达式创建的报警条件。包括但不限于以下情况:
|
Times | Integer | 3 | 发出报警通知需要达到报警条件的次数。 |
Labels | Array of Labels | 报警规则标签。 |
|
Labels | |||
Key | String | cmsRuleKey | 报警规则的标签键。 |
Value | String | cmsRuleValue | 报警规则的标签值。 |
Prometheus | Object | Prometheus报警。 说明 仅当您为企业云监控创建Prometheus报警规则,需要设置该参数。 |
|
PromQL | String | CpuUsage{instanceId="xxxx"}[1m]>90 | PromQL查询语句。 说明 通过PromQL查询语句获取的数据即为报警数据,请您在该语句中携带报警阈值。 |
Level | String | Critical | 报警级别。取值:
|
Times | Long | 3 | 发出报警通知需要达到报警条件的次数。 |
Annotations | Array of Annotations | Prometheus报警时,将注释的键和值进行渲染,易于您对监控项或报警规则的理解。 说明 该功能等同于Prometheus的Annotation。 |
|
Annotations | |||
Key | String | summary | 注释的键。 |
Value | String | {{ $labels.instance }} CPU usage above 10% {current value: {{ humanizePercentage $value }} } | 注释的值。 |
示例
请求示例
http(s)://[Endpoint]/?Action=DescribeMetricRuleList
&<公共请求参数>
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<DescribeMetricRuleListResponse>
<RequestId>386C6712-335F-5054-930A-CC92B851ECBA</RequestId>
<Total>1</Total>
<Alarms>
<Alarm>
<GroupName>ECS_Group</GroupName>
<SilenceTime>86400</SilenceTime>
<ContactGroups>ECS_Alarm</ContactGroups>
<NoEffectiveInterval>00:00-05:30</NoEffectiveInterval>
<GroupBy>group</GroupBy>
<MailSubject>${serviceType}-${metricName}-${levelDescription}通知(${dimensions})</MailSubject>
<SourceType>METRIC</SourceType>
<RuleId>applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****</RuleId>
<Period>60</Period>
<Dimensions>
<instanceId>i-2ze2d6j5uhg20x47****</instanceId>
</Dimensions>
<EffectiveInterval>05:31-23:59</EffectiveInterval>
<Namespace>acs_ecs_dashboard</Namespace>
<AlertState>OK</AlertState>
<GroupId>7301****</GroupId>
<MetricName>cpu_total</MetricName>
<EnableState>true</EnableState>
<Escalations>
<Critical>
<ComparisonOperator>GreaterThanOrEqualToThreshold</ComparisonOperator>
<Times>3</Times>
<Statistics>Average</Statistics>
<Threshold>90</Threshold>
</Critical>
<Info>
<ComparisonOperator>GreaterThanOrEqualToThreshold</ComparisonOperator>
<Times>3</Times>
<Statistics>Average</Statistics>
<Threshold>90</Threshold>
</Info>
<Warn>
<ComparisonOperator>GreaterThanOrEqualToThreshold</ComparisonOperator>
<Times>3</Times>
<Statistics>Average</Statistics>
<Threshold>90</Threshold>
</Warn>
</Escalations>
<Webhook>https://www.aliyun.com</Webhook>
<Resources>[{\"instanceId\":\"i-2ze2d6j5uhg20x47****\"}]</Resources>
<RuleName>Rule_01</RuleName>
</Alarm>
</Alarms>
<Code>200</Code>
<Success>true</Success>
</DescribeMetricRuleListResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "386C6712-335F-5054-930A-CC92B851ECBA",
"Total" : 1,
"Alarms" : {
"Alarm" : [ {
"GroupName" : "ECS_Group",
"SilenceTime" : 86400,
"ContactGroups" : "ECS_Alarm",
"NoEffectiveInterval" : "00:00-05:30",
"GroupBy" : "group",
"MailSubject" : "${serviceType}-${metricName}-${levelDescription}通知(${dimensions})",
"SourceType" : "METRIC",
"RuleId" : "applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****",
"Period" : 60,
"Dimensions" : [ {
"instanceId" : "i-2ze2d6j5uhg20x47****"
} ],
"EffectiveInterval" : "05:31-23:59",
"Namespace" : "acs_ecs_dashboard",
"AlertState" : "OK",
"GroupId" : "7301****",
"MetricName" : "cpu_total",
"EnableState" : true,
"Escalations" : {
"Critical" : {
"ComparisonOperator" : "GreaterThanOrEqualToThreshold",
"Times" : 3,
"Statistics" : "Average",
"Threshold" : "90"
},
"Info" : {
"ComparisonOperator" : "GreaterThanOrEqualToThreshold",
"Times" : 3,
"Statistics" : "Average",
"Threshold" : "90"
},
"Warn" : {
"ComparisonOperator" : "GreaterThanOrEqualToThreshold",
"Times" : 3,
"Statistics" : "Average",
"Threshold" : "90"
}
},
"Webhook" : "https://www.aliyun.com",
"Resources" : "[{\"instanceId\":\"i-2ze2d6j5uhg20x47****\"}]",
"RuleName" : "Rule_01"
} ]
},
"Code" : "200",
"Success" : true
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
404 | ResourceNotFound | The specified resource is not found. | 未找到指定资源。 |
访问错误中心查看更多错误码。