Creates or modifies an alert rule for an application group.
This topic provides an example on how to create an alert rule for the cpu_total
metric of Elastic Compute Service (ECS) in the 17285****
application group. The ID of the alert rule is 123456
. The name of the alert rule is Rule_test
. The alert level is Critical
. The statistical method is Average
. The alert threshold comparator is GreaterThanOrEqualToThreshold
. The alert threshold is 90
. The number of alert retries is 3
. The returned result indicates that the alert rule is created and the alert rule ID is 123456
.
Debugging
Request parameters
Parameter | Type | Required | Example | Description |
---|---|---|---|---|
Action | String | Yes | PutGroupMetricRule | The operation that you want to perform. Set the value to PutGroupMetricRule. |
GroupId | String | Yes | 17285**** | The ID of the application group. For information about how to obtain the ID of an application group, see DescribeMonitorGroups. |
RuleId | String | Yes | 123456 | The ID of the alert rule.
|
Category | String | No | ECS | The abbreviation of the cloud service name. For more information about how to obtain the abbreviation of a cloud service name, see |
RuleName | String | Yes | Rule_01 | The name of the alert rule.
|
Namespace | String | Yes | acs_ecs_dashboard | The namespace of the cloud service. For information about how to obtain the namespace of a cloud service, see DescribeMetricMetaList or Appendix 1: Metrics. |
MetricName | String | Yes | cpu_total | The name of the metric. For information about how to obtain the name of a metric, see DescribeMetricMetaList or Appendix 1: Metrics. |
Dimensions | String | No | [{"instanceId":"i-m5e1qg6uo38rztr4****"}] | The first-level dimension of the alert rule in the application group. Set the value to a collection of |
ExtraDimensionJson | String | No | {"/dev/xvda":"d-m5e6yphgzn3aprwu****"} | The second-level or third-level dimension of the alert rule in the application group. Set the value to a collection of If the first-level dimension of the alert rule is |
EffectiveInterval | String | No | 05:31-23:59 | The time period during which the alert rule is effective. |
NoEffectiveInterval | String | No | 00:00-05:30 | The time period during which the alert rule is ineffective. |
SilenceTime | Integer | No | 86400 | The mute period during which new alert notifications are not sent even if the trigger conditions are met. Unit: seconds. Default value: 86400. |
Period | String | No | 60 | The aggregation period of the metric data. Set the |
Interval | String | No | 60 | The interval at which CloudMonitor checks whether the alert rule is triggered. Unit: seconds. Note We recommend that you set the interval to the data aggregation period. If the interval is shorter than the data aggregation period, alerts cannot be triggered due to insufficient data. |
Webhook | String | No | https://www.aliyun.com | The callback URL. The callback URL must be accessible over the Internet. CloudMonitor sends a POST request to push an alert notification to the callback URL that you specify. Only HTTP requests are supported. |
EmailSubject | String | No | ECS instance | The subject of the alert notification email. |
ContactGroups | String | No | ECS_Group | The alert contact groups. |
Escalations.Critical.Statistics | String | No | Average | The statistical methods for Critical-level alerts. Separate multiple statistical methods with commas (,). The value of this parameter is determined by the |
Escalations.Critical.ComparisonOperator | String | No | GreaterThanOrEqualToThreshold | The comparison operator that is used to compare the metric value with the threshold for Critical-level alerts. Valid values:
|
Escalations.Critical.Threshold | String | No | 90 | The threshold for Critical-level alerts. |
Escalations.Critical.Times | Integer | No | 3 | The consecutive number of times for which the metric value meets the alert condition before a Critical-level alert is triggered. |
Escalations.Warn.Statistics | String | No | Average | The statistical methods for Warn-level alerts. Separate multiple statistical methods with commas (,). The value of this parameter is determined by the |
Escalations.Warn.ComparisonOperator | String | No | GreaterThanOrEqualToThreshold | The comparison operator that is used to compare the metric value with the threshold for Warn-level alerts. Valid values:
|
Escalations.Warn.Threshold | String | No | 90 | The threshold for Warn-level alerts. |
Escalations.Warn.Times | Integer | No | 3 | The consecutive number of times for which the metric value meets the alert condition before a Warn-level alert is triggered. |
Escalations.Info.Statistics | String | No | Average | The statistical methods for Info-level alerts. Separate multiple statistical methods with commas (,). The value of this parameter is determined by the |
Escalations.Info.ComparisonOperator | String | No | GreaterThanOrEqualToThreshold | The comparison operator that is used to compare the metric value with the threshold for Info-level alerts. Valid values:
|
Escalations.Info.Threshold | String | No | 90 | The threshold for Info-level alerts. |
Escalations.Info.Times | Integer | No | 3 | The consecutive number of times for which the metric value meets the alert condition before an Info-level alert is triggered. |
NoDataPolicy | String | No | KEEP_LAST_STATE | The method that is used to handle alerts when no monitoring data is found. Valid values:
|
Labels.N.Key | String | No | key1 | The tag key of the alert rule. |
Labels.N.Value | String | No | value1 | The tag value of the alert rule. |
For more information about common request parameters, see Common parameters.
Response parameters
Parameter | Type | Example | Description |
---|---|---|---|
Code | String | 200 | The HTTP status code. Note The status code 200 indicates that the request was successful. |
Message | String | The Request is not authorization. | The error message. |
RequestId | String | 461CF2CD-2FC3-4B26-8645-7BD27E7D0F1D | The request ID. |
Success | Boolean | true | Indicates whether the request was successful. Valid values:
|
Result | Object | The result of the request. |
|
RuleId | String | 123456 | The ID of the alert rule. |
Examples
Sample requests
http(s)://[Endpoint]/?Action=PutGroupMetricRule
&Category=ECS
&GroupId=17285****
&MetricName=cpu_total
&Namespace=acs_ecs_dashboard
&RuleId=123456
&RuleName=`Rule_test
&Escalations.Critical.Statistics=Average
&Escalations.Critical.ComparisonOperator=GreaterThanOrEqualToThreshold
&Escalations.Critical.Threshold=90
&Escalations.Critical.Times=3
&<Common request parameters>
Sample success responses
XML
format
HTTP/1.1 200 OK
Content-Type:application/xml
<PutGroupMetricRuleResponse>
<Message></Message>
<RequestId>461CF2CD-2FC3-4B26-8645-7BD27E7D0F1D</RequestId>
<Code>200</Code>
<Success>true</Success>
<Result>
<RuleId>123456</RuleId>
</Result>
</PutGroupMetricRuleResponse>
JSON
format
HTTP/1.1 200 OK
Content-Type:application/json
{
"Message" : "",
"RequestId" : "461CF2CD-2FC3-4B26-8645-7BD27E7D0F1D",
"Code" : 200,
"Success" : true,
"Result" : {
"RuleId" : "123456"
}
}
Error codes
For a list of error codes, see Service error codes.