Modifying an Alarm Rule
Function
This API is used to modify an alarm rule.
URI
PUT /V1.0/{project_id}/alarms/{alarm_id}
- Parameter description
Table 1 Parameter description Parameter
Mandatory
Description
project_id
Yes
Specifies the project ID.
For details about how to obtain the project ID, see Obtaining a Project ID.
alarm_id
Yes
Specifies the alarm rule ID.
- Example
PUT https://{Cloud Eye endpoint}/V1.0/{project_id}/alarms/{alarm_id}
Request
- Request parameters
Table 2 Parameter description Parameter
Mandatory
Type
Description
alarm_name
No
String
Specifies the alarm rule name. Only letters, digits, underscores (_), and hyphens (-) are allowed.
alarm_description
No
String
Provides supplementary information about the alarm rule. Enter 0 to 256 characters.
condition
No
Condition object
Specifies the alarm policy set in the alarm rule.
For details, see Table 3.
alarm_action_enabled
No
Boolean
Specifies whether to enable the action to be triggered by an alarm. The default value is true.
NOTE:If you set alarm_action_enabled to true, you must specify either alarm_actions or ok_actions. If alarm_actions and ok_actions coexist, their notificationList must be the same.
alarm_level
No
Integer
Specifies the alarm severity, which can be 1, 2 (default), 3 or 4, indicating critical, major, minor, and informational, respectively.
alarm_type
No
String
Specifies the alarm rule type. The following enumeration types are supported:
EVENT.SYS: The alarm rule is created for system events.
EVENT.CUSTOM: The alarm rule is created for custom events.
RESOURCE_GROUP: The alarm rule is created for resource groups.
alarm_actions
No
Arrays of objects
Specifies the action to be triggered by an alarm. The structure example is as follows: { "type": "notification","notificationList": ["urn:smn:southchina:68438a86d98e427e907e0097b7e35d47:sd"] }
Possible values of type are as follows:
notification: indicates that a notification will be sent.
autoscaling: indicates that a scaling action will be triggered.
For details, see Table 4.
insufficientdata_actions
No
Arrays of objects
Specifies the action to be triggered by the alarm of insufficient data. (You do not need to configure this deprecated parameter.)
For details, see Table 6.
ok_actions
No
Arrays of objects
Specifies the action to be triggered after the alarm is cleared.
For details, see Table 5.
Table 3 condition data structure description Parameter
Mandatory
Type
Description
period
Yes
Integer
Specifies how often Cloud Eye aggregates data, which can be
- 1: Cloud Eye performs no aggregation and displays raw data.
- 300: Cloud Eye aggregates data every 5 minutes.
- 1200: Cloud Eye aggregates data every 20 minutes.
- 3600: Cloud Eye aggregates data every 1 hour.
- 14400: Cloud Eye aggregates data every 4 hours.
- 86400: Cloud Eye aggregates data every 24 hours.
filter
Yes
String
Specifies the data rollup method, which can be
- average: Cloud Eye calculates the average value of metric data within a rollup period.
- max: Cloud Eye calculates the maximum value of metric data within a rollup period.
- min: Cloud Eye calculates the minimum value of metric data within a rollup period.
- sum: Cloud Eye calculates the sum of metric data within a rollup period.
- variance: Cloud Eye calculates the variance value of metric data within a rollup period.
comparison_operator
Yes
String
Specifies the operator of alarm thresholds, which can be >, =, <, >=, or <=.
value
Yes
Double
Specifies the alarm threshold.
Supported range: 0 to Number. MAX_VALUE (1.7976931348623157e+108)
For detailed thresholds, see the value range of each metric in the appendix. For example, you can set ECS cpu_util to 80.
unit
No
String
Specifies the data unit. Enter up to 32 characters.
count
Yes
Integer
Specifies the number of consecutive occurrence times that the alarm policy was met. Supported range: 1 to 5
suppress_duration
No
integer
Specifies the interval for triggering an alarm if the alarm persists. Possible intervals are as follows:
0: Cloud Eye triggers the alarm only once.
300: Cloud Eye triggers the alarm every 5 minutes.
600: Cloud Eye triggers the alarm every 10 minutes.
900: Cloud Eye triggers the alarm every 15 minutes.
1800: Cloud Eye triggers the alarm every 30 minutes.
3600: Cloud Eye triggers the alarm every hour.
10800: Cloud Eye triggers the alarm every 3 hours.
21600: Cloud Eye triggers the alarm every 6 hours.
43200: Cloud Eye triggers the alarm every 12 hours.
86400: Cloud Eye triggers the alarm every day.
Table 4 alarm_actions data structure description Parameter
Mandatory
Type
Description
type
Yes
String
Specifies the alarm notification type.- notification: indicates that a notification will be sent.
- autoscaling: indicates that a scaling action will be triggered.
notificationList
Yes
Arrays of strings
Specifies the list of objects to be notified if the alarm status changes. You can configure up to 5 object IDs. topicUrn can be obtained from SMN. For details, see Querying Topics.
If you set type to notification, you must specify notificationList. If you set type to autoscaling, you must set notificationList to [].
NOTE:- To make the Auto Scaling (AS) alarm rule take effect, you must bind the scaling policy. For details, see Creating an AS Policy.
- If you set alarm_action_enabled to true, you must specify either alarm_actions or ok_actions. (You do not need to configure the deprecated parameter insufficientdata_actions.)
- If alarm_actions and ok_actions coexist, their notificationList must be the same. (You do not need to configure the deprecated parameter insufficientdata_actions.)
- The IDs in the list are strings.
Table 5 ok_actions data structure description Parameter
Mandatory
Type
Description
type
Yes
String
Specifies the notification type when an alarm is triggered.- notification: indicates that a notification will be sent.
- autoscaling: indicates that a scaling action will be triggered.
notificationList
Yes
Arrays of objects
Specifies the list of objects to be notified if the alarm status changes. The list contains a maximum of 5 object IDs. topicUrn can be obtained from SMN. For details, see Querying Topics.
NOTE:If you set alarm_action_enabled to true, you must specify either alarm_actions or ok_actions. (You do not need to configure the deprecated parameter insufficientdata_actions.)
If alarm_actions and ok_actions coexist, their notificationList must be the same. (You do not need to configure the deprecated parameter insufficientdata_actions.)
Table 6 insufficientdata_actions data structure description Parameter
Mandatory
Type
Description
type
Yes
String
Specifies the notification type when an alarm is triggered.- notification: indicates that a notification will be sent.
- autoscaling: indicates that a scaling action will be triggered.
notificationList
Yes
Arrays of objects
Specifies the list of objects to be notified if the alarm status changes. You can configure up to 5 object IDs. topicUrn can be obtained from SMN. For details, see Querying Topics.
NOTE:- If you set alarm_action_enabled to true, you must specify either alarm_actions or ok_actions. (You do not need to configure the deprecated parameter insufficientdata_actions.)
- If alarm_actions and ok_actions coexist, their notificationList must be the same. (You do not need to configure the deprecated parameter insufficientdata_actions.)
- The IDs in the list are strings.
- Example request
{ "alarm_name": "alarm-update-test01", "alarm_description": "alarm-update-test01", "condition": { "comparison_operator": ">=", "count": 3, "filter": "average", "period": 1, "value": 95 }, "alarm_action_enabled": false, "alarm_level": 2 }
Returned Values
- Normal
- Abnormal
Returned Value
Description
400 Bad Request
Request error.
401 Unauthorized
The authentication information is not provided or is incorrect.
403 Forbidden
You are forbidden to access the page requested.
408 Request Timeout
The request timed out.
429 Too Many Requests
Concurrent requests are excessive.
500 Internal Server Error
Failed to complete the request because of an internal service error.
503 Service Unavailable
The service is currently unavailable.
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.