Querying Alarm Rules
Function
This API is used to query alarm rules. You can specify the paging parameters to limit the number of query results displayed on a page. You can also set the sorting order of query results.
For API V1, only an alarm rule can be configured for a single resource. You are advised to use Querying Alarm Rules (Recommended) to work with the console.
Debugging
You can debug the API in API Explorer which supports automatic authentication. API Explorer can automatically generate and debug example SDK code.
URI
GET /V1.0/{project_id}/alarms
- 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.
Table 2 Parameter description Parameter
Type
Description
alarms
Array of objects
Specifies the alarm rule list.
For details, see Table 3.
Table 3 Query parameter description Parameter
Mandatory
Type
Description
start
No
String
Specifies the first queried alarm to be displayed on a page.
The value is alarm_id.
limit
No
Integer
Supported range: 1 to 100 (default)
This parameter is used to limit the number of query results.
order
No
String
Specifies the result sorting method, which is sorted by timestamp.
The default method is desc.
- asc: The query results are displayed in the ascending order.
- desc: The query results are displayed in the descending order.
- Example
Request example 1: Query the current alarm rule list.
GET https://{Cloud Eye endpoint}/V1.0/{project_id}/alarms
Request example 2: Query the alarm rule list. Start by setting alarm_id to al1441967036681YkazZ0deN and retain 10 records in the descending order of time stamps.GET https://{Cloud Eye endpoint}/V1.0/{project_id}/alarms?start=al1441967036681YkazZ0deN&limit=10&order=desc
Request
None
Response
- Response parameters
Table 4 Parameter description Parameter
Type
Description
metric_alarms
Array of objects
Specifies the list of alarm objects.
For details, see Table 5.
meta_data
Object
Specifies the metadata of query results, including the pagination information.
For details, see Table 12.
Table 5 metric_alarms data structure description Parameter
Type
Description
alarm_name
String
Specifies the alarm rule name.
alarm_description
String
Provides supplementary information about the alarm rule.
metric
Object
Specifies the alarm metric.
For details, see Table 6.
condition
Object
Specifies the alarm triggering condition.
For details, see Table 11.
alarm_enabled
Boolean
Specifies whether to enable the alarm rule.
alarm_level
Integer
Specifies the alarm severity, which can be 1, 2 (default), 3 or 4, indicating critical, major, minor, and informational, respectively.
alarm_action_enabled
Boolean
Specifies whether to enable the action to be triggered by an alarm.
alarm_actions
Array of objects
Specifies the action to be triggered by an alarm.
For details, see Table 8.
ok_actions
Array of objects
Specifies the action to be triggered after the alarm is cleared.
For details, see Table 9.
insufficientdata_actions
Array of objects
Specifies the action triggered by data insufficiency.
For details, see Table 10.
alarm_action_begin_time
String
Specifies when an alarm rule starts to take effect. Notifications are sent only within the validity period of the alarm rule.
For example, if alarm_action_begin_time is set to 08:00 and alarm_action_end_time is set to 20:00, notifications are sent only from 08:00 to 20:00.
alarm_action_end_time
String
Specifies when an alarm rule stops to take effect.
For example, if alarm_action_begin_time is set to 08:00 and alarm_action_end_time is set to 20:00, notifications are sent only from 08:00 to 20:00.
alarm_type
String
Specifies the alarm rule type.
- 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.
- MULTI_INSTANCE: The alarm rule is created for specific resources.
alarm_id
String
Specifies the alarm rule ID.
update_time
Long
Specifies when the alarm status changed. The time is a UNIX timestamp and the unit is ms.
alarm_state
String
Specifies the alarm status, which can be
- ok: The alarm status is normal.
- alarm: An alarm is generated.
- insufficient_data: The required data is insufficient.
enterprise_project_id
String
Specifies the enterprise project ID.
- Value all_granted_eps indicates all enterprise projects.
- Value 0 indicates the default enterprise project default.
Table 6 metric data structure description Parameter
Type
Description
namespace
String
Specifies the namespace of a service. For details, see Services Interconnected with Cloud Eye.
dimensions
Array of objects
Specifies the list of metric dimensions.
For details, see Table 7.
metric_name
String
Specifies the metric ID. For example, if the monitoring metric of an ECS is CPU usage, metric_name is cpu_util. For details, see Services Interconnected with Cloud Eye.
resource_group_id
String
Specifies the resource group ID selected during the alarm rule creation, for example, rg1603786526428bWbVmk4rP.
resource_group_name
String
Specifies the name of the resource group selected during the alarm rule creation, for example, Resource-Group-ECS-01.
Table 7 dimensions data structure description Parameter
Type
Description
name
String
Specifies the dimension. For example, the ECS dimension is instance_id. For details about the dimension of each service, see the key column in Services Interconnected with Cloud Eye.
value
String
Specifies the dimension value, for example, an ECS ID.
Enter 1 to 256 characters.
Table 8 alarm_actions data structure description Parameter
Type
Description
type
String
Specifies the alarm notification type.- notification: indicates that a notification will be sent.
- autoscaling: indicates that a scaling action will be triggered.
notificationList
Array of strings
Specifies the list of objects to be notified if the alarm status changes.
NOTE:The IDs in the list are strings.
Table 9 ok_actions data structure description Parameter
Type
Description
type
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
Array of strings
Specifies the ID list of objects to be notified if the alarm status changes.
NOTE:The IDs in the list are strings.
Table 10 insufficientdata_actions data structure description Parameter
Type
Description
type
String
Specifies the type of the alarm notification triggered by insufficient data. The type is notification.
notificationList
Array of strings
Specifies the ID list of the notified objects when an alarm notification is triggered due to insufficient data.
Table 11 condition data structure description Parameter
Type
Description
period
Integer
Specifies the interval (seconds) for checking whether the configured alarm rules are met.
filter
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
String
Specifies the alarm threshold operator, which can be >, =, <, >=, or <=.
value
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 in Services Interconnected with Cloud Eye to 80.
unit
String
Specifies the data unit. Enter up to 32 characters.
count
Integer
Specifies the number of consecutive occurrence times that the alarm policy was met. Supported range: 1 to 5
suppress_duration
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 12 meta_data data structure description Parameter
Type
Description
count
Integer
Specifies the number of returned results.
marker
String
Specifies the pagination marker.
For example, you have queried 10 records this time and alarm_id of the tenth record is 1441967036681YkazZ0deN. In your next query, if start is set to al1441967036681YkazZ0deN, you can start your query from the next alarm rule ID of al1441967036681YkazZ0deN.
total
Integer
Specifies the total number of query results.
- Example response
{ "metric_alarms": [ { "alarm_name": "alarm-ttttttt", "alarm_description": "", "metric": { "namespace": "SYS.ECS", "dimensions": [ { "name": "instance_id", "value": "07814c0e-59a1-4fcd-a6fb-56f2f6923046" } ], "metric_name": "cpu_util" }, "condition": { "period": 300, "filter": "average", "comparison_operator": ">=", "value": 0, "unit": "%", "count": 3 }, "alarm_enabled": true, "alarm_level": 2, "alarm_action_enabled": false, "alarm_id": "al15330507498596W7vmlGKL", "update_time": 1533050749992, "alarm_state": "alarm" }, { "alarm_name": "alarm-m5rwxxxxxxx", "alarm_description": "", "metric": { "namespace": "SYS.ECS", "dimensions": [ { "name": "instance_id", "value": "30f3858d-4377-4514-9081-be5bdbf1392e" } ], "metric_name": "network_incoming_bytes_aggregate_rate" }, "condition": { "period": 300, "filter": "average", "comparison_operator": ">=", "value": 12, "unit": "Byte/s", "count": 3, "suppress_duration": 1800 }, "alarm_enabled": true, "alarm_level": 2, "alarm_action_enabled": true, "alarm_actions": [ { "type": "notification", "notificationList": [ "urn:smn:region:68438a86d98e427e907e0097b7e35d48:test0315" ] } ], "ok_actions": [ { "type": "notification", "notificationList": [ "urn:smn:region:68438a86d98e427e907e0097b7e35d48:test0315" ] } ], "alarm_id": "al1533031226533nKJexAlbq", "update_time": 1533204036276, "alarm_state": "ok" } ], "meta_data": { "count": 2, "marker": "al1533031226533nKJexAlbq", "total": 389 } }
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
Access to the requested page is forbidden.
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.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot