Querying Alarm Rules

Function

This API is used to query the alarm rule list. 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.

    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 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 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.

    Table 6 metric data structure description

    Parameter

    Type

    Description

    namespace

    String

    Query 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 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 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. The following methods are supported:

    • 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

    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
                },
                "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

    200

  • 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.