Creating an Alarm Rule (Recommended)
Function
This API is used to create alarm rules.
URI
POST /v2/{project_id}/alarms
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
project_id |
Yes |
String |
Definition Project ID. It is used to specify the project that an asset belongs to. You can query the assets of a project by project ID. You can obtain the project ID from the API or console. For details, see Obtaining a Project ID. Constraints N/A Range 1 to 64 characters Default Value N/A |
Request Parameters
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
Content-Type |
No |
String |
Definition MIME type of the request body. Constraints: None Value range: The value can contain 1 to 64 characters. Default value: The default type is application/json; charset=UTF-8. |
|
X-Auth-Token |
No |
String |
Definition User token. Constraints: None Value range: The value can contain 1 to 16,384 characters. Default value: None |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
name |
Yes |
String |
Definition Alarm name. Constraints N/A Range The value allows 1 to 128 characters and can contain digits, letters, underscores (_), and hyphens (-). Default Value N/A |
|
description |
No |
String |
Definition Alarm description. Constraints N/A Range [0,256] Default Value N/A |
|
namespace |
Yes |
String |
Definition Namespace of a service. For details about the namespace of each service, see Service Namespaces. Constraints N/A Range The value is in the service.item format. The values of service and item must be a string, starting with a letter and containing only digits (0–9), letters (case-insensitive), and underscores (_). The value must contain 0 to 32 characters. Default Value N/A |
|
resource_group_id |
No |
String |
Definition Resource group ID. Constraints N/A Range The value starts with rg and is followed by 22 characters that may include letters, digits, or a combination of both. It can contain 2 to 24 characters. Default Value N/A |
|
resources |
Yes |
Array<Array<Dimension>> |
Definition Resource list. Constraints If an alarm rule is created for all resources or resources in a resource group, leave the resource dimension blank. If the alarm rule is created for specified resources, the resource dimension value is mandatory, and you can specify multiple resources to be monitored at a time. A maximum of 1,000 resource dimensions can be specified. |
|
policies |
No |
Array of AlarmRulePolicy objects |
Definition Alarm policy. Constraints This parameter is mandatory when alarm_template_id is left blank. Otherwise, leave it empty. A maximum of 50 policies can be configured. |
|
type |
Yes |
String |
Definition Alarm rule type. Constraints N/A Range The value can be: Default Value N/A |
|
alarm_notifications |
No |
Array of Notification objects |
Definition: Notification group or topic subscription for alarm notifications. Constraints: You can configure 0 to 10 notification groups or topic subscriptions. |
|
ok_notifications |
No |
Array of Notification objects |
Definition: Information about the notification group or topic subscription when the alarm is cleared. Constraints: You can configure 0 to 10 notification groups or topic subscriptions. |
|
notification_begin_time |
No |
String |
Definition Time when alarm notifications were enabled. Constraints N/A Range The value allows 1 to 64 characters and can only contain digits and colons (:). Default Value N/A |
|
notification_end_time |
No |
String |
Definition Time when alarm notifications were disabled. Constraints N/A Range The value allows 1 to 64 characters and can only contain digits and colons (:). Default Value N/A |
|
effective_timezone |
No |
String |
Definition Time zone, for example, GMT-08:00, GMT+08:00, or GMT+0:00. Constraints N/A Range 1 to 16 characters Default Value N/A |
|
enterprise_project_id |
No |
String |
Definition Enterprise project ID. Constraints N/A Range The value can only contain lowercase letters, digits, and hyphens (-). Default Value N/A |
|
enabled |
Yes |
Boolean |
Definition Whether to enable the alarm rule. Constraints N/A Range A boolean value, which can be: Default Value true |
|
notification_enabled |
Yes |
Boolean |
Definition Whether to enable alarm notifications. Constraints N/A Range A boolean value, which can be: Default Value true |
|
alarm_template_id |
No |
String |
Definition ID of an alarm template associated with an alarm rule. If this parameter is specified, the policy associated with the alarm rule changes accordingly with the alarm template policy. Constraints N/A Range The value starts with at and allows 2 to 64 characters. It can only contain letters and digits. Default Value N/A |
|
tags |
No |
Array of ResourceTag objects |
Definition Tenant tags. Constraints A maximum of 20 tags can be added. |
|
product_name |
No |
String |
Definition Product name. It needs to be specified when product alarm rules with multiple dimensions are created. Generally, the value format is Service namespace,First-level dimension of the service, for example, SYS.ECS,instance_id. Constraints N/A Range [0,128] Default Value N/A |
|
resource_level |
No |
String |
Definition Product alarm rules with multiple dimensions need to be specified as product-level rules. If the value of resource_level is product, it refers to the cloud product level. If the value of resource_level is dimension or not specified, it refers to the sub-dimension level. Constraints N/A Range The value can be: Default Value dimension |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
name |
Yes |
String |
Definition Dimension of the resource. For example, the dimension of an ECS is instance_id. For details about the metric dimension name of each service resource, see Service Dimension Names. Constraints N/A Range The value must start with a letter and can only contain letters, digits, underscores (_), and hyphens (-). Default Value N/A |
|
value |
No |
String |
Definition Resource dimension value, which is an instance ID, for example, 4270ff17-aba3-4138-89fa-820594c39755. Constraints N/A Range 1 to 256 characters Default Value N/A |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
metric_name |
Yes |
String |
Definition Metric name of a resource. For details about the metrics of each service, see Service Metric Names. Constraints N/A Range The value must start with a letter and can only contain digits, letters, underscores (_), and hyphens (-). It allows 1 to 96 characters. For example, the ECS metric cpu_util indicates the CPU usage of an ECS. The DDS metric mongo001_command_ps indicates the command execution frequency. Default Value N/A |
|
period |
Yes |
Integer |
Definition Metric period, in seconds. For details about the original metric period for each cloud service, see Supported Services. Constraints N/A Range The value can be:
Default Value N/A |
|
filter |
Yes |
String |
Definition Aggregation method. Constraints N/A Range average, variance, min, max, or sum Default Value N/A |
|
comparison_operator |
Yes |
String |
Definition Threshold symbol. Constraints The threshold symbols for metric alarms are >, >=, <, <=, =, !=, cycle_decrease, cycle_increase, and cycle_wave. The threshold symbols for event alarms are >, >=, <, <=, =, and !=. Range The value can be >, <, >=, <=, =, !=, cycle_decrease, cycle_increase, or cycle_wave. cycle_decrease indicates the decrease relative to the last period; cycle_increase indicates the increase relative to the last period; cycle_wave indicates the increase or decrease relative to the last period. Default Value N/A |
|
value |
No |
Number |
Definition Alarm threshold. For specific thresholds, see the value range of each metric in the appendix. Constraints If there is only one threshold, value and alarm_level are used in pairs. If there are both hierarchical_value and value, hierarchical_value is used. Range -1.7976931348623157e+108 to 1.7976931348623157e+108 Default Value N/A |
|
hierarchical_value |
No |
HierarchicalValue object |
Definition Multi-level alarm threshold. Constraints If there are both hierarchical_value and value, hierarchical_value is used. When you create or modify an alarm rule, you can set only one threshold in the following scenarios: |
|
unit |
No |
String |
Definition Data unit. Constraints N/A Range 0 to 32 characters Default Value N/A |
|
count |
Yes |
Integer |
Definition Number of times that the alarm triggering conditions are met. Constraints N/A Range For event alarms, the value ranges from 1 to 180. For metric and website alarms, the value can be 1, 2, 3, 4, 5, 10, 15, 30, 60, 90, 120, or 180. Default Value N/A |
|
suppress_duration |
No |
Integer |
Definition Alarm suppression duration, in seconds. This parameter corresponds to the last field in the alarm policy when you create an alarm rule. This field is used to mitigate frequent alarm occurrences. Constraints N/A Range The value can be:
Default Value N/A |
|
level |
No |
Integer |
Definition Alarm severity. Constraints N/A Range The value can be 1 (critical), ** 2** (major), 3 (minor), or 4 (informational). Default Value 2 |
|
namespace |
No |
String |
Definition namespace and dimension_name need to be specified for cloud product-level rules. This is to specify the resources that the policies apply to. For details about the namespace of each service, see Service Namespaces. Constraints N/A Range The value is in the service.item format. The values of service and item must be a string, starting with a letter and containing only digits (0–9), letters (case-insensitive), and underscores (_). The value must contain 0 to 32 characters. Default Value N/A |
|
dimension_name |
No |
String |
Definition Metric dimension name. For details, see Service Dimension Names. namespace and dimension_name need to be specified for cloud product-level rules. This is to specify the resources that the policies apply to. Constraints N/A Range A maximum of four dimensions are supported. Example: instance_id for single-dimension scenarios and instance_id,disk for multi-dimension scenarios Default Value N/A |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
critical |
No |
Double |
Definition Threshold for critical alarms. Constraints N/A Range [-1.7976931348623157e+108, 1.7976931348623157e+108] Default Value N/A |
|
major |
No |
Double |
Definition Threshold for major alarms. Constraints N/A Range [-1.7976931348623157e+108, 1.7976931348623157e+108] Default Value N/A |
|
minor |
No |
Double |
Definition Threshold for minor alarms. Constraints N/A Range [-1.7976931348623157e+108, 1.7976931348623157e+108] Default Value N/A |
|
info |
No |
Double |
Definition Threshold for informational alarms. Constraints N/A Range [-1.7976931348623157e+108, 1.7976931348623157e+108] Default Value N/A |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
type |
Yes |
String |
Definition Notification type. Constraints N/A Range The value can be: Default Value N/A |
|
notification_list |
Yes |
Array of strings |
Definition Recipients to be notified of the alarm status changes. The value of topicUrn can be obtained from SMN. For details, see section "Querying Topics". Constraints If type is set to notification, the value of notification_list cannot be left blank. If type is set to autoscaling, the value of notification_list must be left blank. If notification_enabled is set to true, you must specify either alarm_notifications or ok_notifications. If both alarm_notifications and ok_notifications are specified, their notification_list values must be the same. A maximum of 20 recipients are allowed. |
Response Parameters
Status code: 201
|
Parameter |
Type |
Description |
|---|---|---|
|
alarm_id |
String |
Definition Alarm rule ID. Range The value starts with al and is followed by 22 characters that may include letters, digits, or a combination of both. |
Status code: 400
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Status codes customized by each cloud service when a request error occurs. |
|
error_msg |
String |
Request error message. |
|
request_id |
String |
Request ID. |
Status code: 500
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Status codes customized by each cloud service when a request error occurs. |
|
error_msg |
String |
Request error message. |
|
request_id |
String |
Request ID. |
Example Requests
Creating an alarm rule whose name is alarm-lxy-rg-RDS, type is RESOURCE_GROUP, ** suppress_duration** is 86400, and level is 2.
{
"name" : "alarm-lxy-rg-RDS",
"description" : "",
"namespace" : "SYS.RDS",
"type" : "RESOURCE_GROUP",
"resources" : [ [ {
"name" : "rds_cluster_id"
} ] ],
"policies" : [ {
"metric_name" : "rds001_cpu_util",
"period" : 1,
"filter" : "average",
"comparison_operator" : ">=",
"value" : 0,
"unit" : "%",
"count" : 1,
"suppress_duration" : 86400,
"level" : 2
} ],
"enabled" : true,
"notification_enabled" : false,
"resource_group_id" : "rg1623429506587NbRweoa3J",
"enterprise_project_id" : "a9d919b7-0456-4bb8-b470-6a23b64f4f7e",
"alarm_template_id" : "at1628592157541dB1klWgY6"
}
Example Responses
Status code: 201
Alarm rule created.
{
"alarm_id" : "alCzk8o9dtSQHtiDgb44Eepw"
}
Status Codes
|
Status Code |
Description |
|---|---|
|
201 |
Alarm rule created. |
|
400 |
Parameter verification failed. |
|
500 |
Internal system error. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.