Reviewed-by: Ziuzko, Alevtina <alevtina.ziuzko@t-systems.com> Co-authored-by: qiujiandong1 <qiujiandong1@huawei.com> Co-committed-by: qiujiandong1 <qiujiandong1@huawei.com>
47 KiB
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.
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.
Minimum: 1
Maximum: 64
Regular expression matching: ^[a-zA-Z0-9-]{1,64}$
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
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.
- ExampleRequest example 1: Query the current alarm rule list.
GET https://{Cloud Eye endpoint}/V1.0/{project_id}/alarmsRequest 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 Response parameters 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 11.
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 10.
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.
alarm_id
String
Specifies the alarm rule ID.
update_time
Long
Specifies when the alarm status changed. The value is a UNIX timestamp, in milliseconds.
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.
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.
Table 7 dimensions data structure description Parameter
Type
Description
name
String
Specifies the monitoring dimension name. For example, the ECS dimension is instance_id. For details about the dimension of each monitored object, see the documentation of a specific cloud service. You can navigate there directly from the Services Interconnected with Cloud Eye page.
value
String
Specifies the dimension value, for example, an ECS ID.
The value contains 1 to 256 characters.
Table 8 alarm_actions data structure description Parameter
Type
Description
type
String
Specifies the alarm notification type.- notification: A notification will be sent.
- autoscaling: A scaling action will be triggered.
notificationList
Array of strings
Specifies the list of objects to be notified of 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: A notification will be sent.
- autoscaling: 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 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 aggregation method. The value can be:
- average: average value of metric data within an aggregation period.
- max: maximum value of metric data in an aggregation period.
- min: Cloud Eye calculates the minimum value of metric data within a rollup period.
- sum: sum of metric data within an aggregation period.
- variance: variance value of metric data within an aggregation period.
comparison_operator
String
Specifies the alarm threshold operator, which can be >, =, <, >=, <=, or !=.
value
Double
Specifies the alarm threshold.
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. The value can contain a maximum of 32 characters. You can set this parameter based on your service needs.
Minimum: 0
Maximum: 32
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. The value can be:
- 0: The alarm is triggered only once.
- 300: An alarm is triggered every 5 minutes.
- 600: An alarm is triggered every 10 minutes.
- 900: An alarm is triggered every 15 minutes.
- 1800: An alarm is triggered every 30 minutes.
- 3600: An alarm is triggered every hour.
- 10800: An alarm is triggered every 3 hours.
- 21600: An alarm is triggered every 6 hours.
- 43200: An alarm is triggered every 12 hours.
- 86400: An alarm is triggered every day.
Table 11 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.