全部产品
Search
文档中心

应用实时监控服务ARMS:GetAlertRules - 获取已经创建的告警规则

更新时间:Nov 05, 2024

查询已经创建的告警规则。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
arms:GetAlertRulesget
  • 全部资源
    *

请求参数

名称类型必填描述示例值
AlertIdsstring

告警规则 ID 列表,告警规则 ID 是识别告警规则的唯一标志,不会重复。

  • 如果不指定,API 请求将不会根据告警规则 ID 对告警规则进行筛选。
  • 如果指定了告警规则 ID 列表,那么此次请求将只会返回在列表中的告警规则的子集,其它筛选条件也会同时生效。
说明 您可以通过其他请求参数调用 GetAlertRules 接口,从返回信息中获取 AlertIds,后续您可以直接通过 AlertIds 查询指定的告警规则。
["12345"]
AlertNamesstring

告警规则名称列表。新版告警规则创建时不允许出现重名,但是存量告警规则可能存在重名告警,因此 AlertName 不是告警规则的唯一标志。

  • 如果不指定,将不会对告警规则进行过滤。
  • 如果指定告警规则名称列表,本次请求将只返回在列表中的告警的子集,其它的筛选条件也会生效。
["test"]
RegionIdstring

地域 ID。

cn-hangzhou
AlertTypestring

告警规则类型。 新版告警必传。

  • APPLICATION_MONITORING_ALERT_RULE:应用监控告警规则。
  • BROWSER_MONITORING_ALERT_RULE:前端监控告警规则。
  • PROMETHEUS_MONITORING_ALERT_RULE:Prometheus 监控告警规则。
APPLICATION_MONITORING_ALERT_RULE
AlertStatusstring

告警规则运行状态。

  • RUNNING:运行中
  • STOPPED:已停止
  • PAUSED:被暂停
说明 PAUSED 状态说明告警规则状态异常,被系统主动暂停,可能原因有告警规则唯独值过大或者关联集群已经被删除等。
RUNNING
ClusterIdstring

Prometheus 监控告警规则的集群 ID。

ceba9b9ea5b924dd0b6726d2de6******
ProductCodestring

无需填写。

null
Pagelong

查询第 N 页告警。

1
Sizelong

每一页告警规则数量。

20
Tagsarray<object>

标签列表。

object
Keystring

标签键。

type
Valuestring

标签值。

prod

返回参数

名称类型描述示例值
object

返回结构体。

RequestIdstring

请求 ID。

337B8F7E-0A64-5768-9225-E9B3CF******
PageBeanobject

分页对象。

Totallong

查询到的告警规则总数。

1
Pagelong

查询的页数。

1
Sizelong

每一页告警规则数量。

20
AlertRulesarray<object>

告警规则列表。

alertRulesobject

告警规则列表结构体。

AlertIdlong

告警规则 ID。

5730***
AlertNamestring

告警规则名称。

arms-test
UserIdstring

阿里云账号 ID。

1131971649******
RegionIdstring

地域 ID。

cn-hangzhou
AlertTypestring

告警规则类型。

  • APPLICATION_ MONITORING_ ALERT_RULE:应用监控告警规则。
  • BROWSER_ MONITORING_ ALERT_RULE:前端监控告警规则。
  • PROMETHEUS_ MONITORING_ ALERT_RULE:Prometheus 监控告警规则。
APPLICATION_MONITORING_ALERT_RULE
AlertStatusstring

告警规则运行状态。

  • RUNNING:运行中
  • STOPPED:已停止
  • PAUSED:被暂停
说明 PAUSED 状态说明告警规则状态异常,被系统主动暂停,可能原因有告警规则唯独值过大或者关联集群已经被删除等。
RUNNING
CreatedTimelong

告警规则创建时间的时间戳,单位为毫秒。

1640333981000
UpdatedTimelong

告警规则更新时间的时间戳,单位为毫秒。

1640333981000
Extendstring

扩展字段。

说明 如果是存量应用监控告警规则,字段会包含联系人、告警模板、通知内容等信息。
{\"alarmContext\":\"{\\\"content\\\":\\\"报警名称:$报警名称\\\\n筛选条件: $筛选\\\\n报警时间: $报警时间\\\\n报警内容: $报警内容\\\\n注意!:该报警未收到恢复邮件之前,正在持续报警中,24小时后会再次提醒您!\\\",\\\"subTitle\\\":\\\"\\\"}\",\"alertWays\":\"[0,1]\",\"contactGroupIds\":\"381,5075\",\"notice\":\"{\\\"endTime\\\":1480607940000,\\\"noticeEndTime\\\":1480607940000,\\\"noticeStartTime\\\":1480521600000,\\\"startTime\\\":1480521600000}\"}
NotifyStrategystring

通知策略名称。

ALERT_MANAGER
Pidsarray

应用监控或前端监控告警关联应用的 PID。

pidsstring

应用的 PID。

["b590lhguqs@40d8deedfa9******"]
AutoAddNewApplicationboolean

应用监控或前端监控是否开启新创建应用追加到此告警规则功能。

  • true:开启
  • false:不开启
false
MetricsTypestring

应用监控或前端监控告警规则的告警指标类型。

JVM
AlertRuleContentobject

应用监控或前端监控的告警规则内容。

Conditionstring

应用监控或前端监控多个告警条件之间的触发逻辑。

  • OR:满足下述任何一个条件。
  • AND:同时满足下述条件。
OR
AlertRuleItemsarray<object>

应用监控或前端监控告警规则的告警条件。

alertRuleItemsobject

告警条件对象。

Nlong

最近 N 分钟。

1
MetricKeystring

具体告警条件的指标。

appstat.jvm.non_heap_used
Aggregatestring

告警条件聚合方式。

  • AVG:平均
  • SUM:求和
  • MAX:最大值
  • MIN:最小值
AVG
Operatorstring

告警条件的判断条件。

  • CURRENT_GTE:大于或等于
  • CURRENT_LTE:小于或等于
  • PREVIOUS_UP:环比上升百分比
  • PREVIOUS_DOWN:环比下降百分比
  • HOH_UP:与上小时同比上升百分比
  • HOH_DOWN:与上小时同比下降百分比
  • DOD_UP:与昨日同比上升百分比
  • DOD_DOWN:与昨日同比下降百分比
CURRENT_GTE
Valuestring

告警条件阈值。

1
Filtersobject

应用监控或前端监控告警规则的过滤项。

DimFiltersarray<object>

应用监控或前端监控告警规则的过滤项信息。

dimFiltersobject

应用监控或前端监控告警规则的过滤条件对象。

FilterKeystring

过滤条件 Key。

rootIp
FilterOptstring

过滤条件操作关系。

ALL
FilterValuesarray

过滤条件参数信息。

filterValuesstring

过滤条件参数。

null
CustomSLSFiltersarray<object>

前端监控告警规则的自定义过滤条件。

customSLSFiltersobject

自定义过滤条件对象。

Keystring

过滤条件 Key。

username
Optstring

过滤条件操作关系。

  • =:等于
  • not:不等于
=
Valuestring

过滤条件参数值。

test
Tstring

仅用于区分前端监控日志类型,其它过滤条件不包含此字段。

null
Showboolean

此筛选条件是否在前端展示。

false
CustomSLSGroupByDimensionsarray

聚合维度信息。

customSLSGroupByDimensionsstring

聚合维度参数值。

["page"]
CustomSLSWheresarray

设置筛选条件信息。

customSLSWheresstring

设置筛选条件参数值。

["t like '%api%'"]
AlertCheckTypestring

Prometheus 监控告警规则的告警检查类型。

  • STATIC: 静态阈值类型。
  • CUSTOM:自定义 PromQL 类型。
STATIC
ClusterIdstring

Prometheus 监控告警规则的集群 ID。

ceba9b9ea5b924dd0b6726d2de6******
AlertGrouplong

Prometheus 告警规则的告警分组 ID。

  • -1:自定义 PromQL
  • 1:Kubernetes 负载
  • 15:Kubernetes 节点
1
PromQLstring

Prometheus 告警规则的 PromQL 语句。

node_memory_MemAvailable_bytes{} / node_memory_MemTotal_bytes{} * 100
Durationstring

Prometheus 告警规则的持续时间。

1
Levelstring

Prometheus 告警规则的等级。

  • P1:一般用于影响核心业务可用性,影响范围很大,可能导致严重后果的重大问题的告警通知。
  • P2:一般用于部分业务出错,会对系统可用性造成一定影响,但是影响范围相对有限的问题的告警通知。
  • P3:一般用于对可能导致业务出错或者受影响的问题的告警通知,或者在相对重要程度较低的业务发送的告警通知。
  • P4: 用于需要通知,但是优先级较低,也不会对业务造成影响的场景发送告警通知。
  • 默认:如果不需要区分告警等级,可以使用默认级别。
P2
Messagestring

Prometheus 告警规则的告警内容。

命名空间: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / 容器: {{$labels.container}} CPU使用率{{$labels.metrics_params_opt_label_value}} {{$labels.metrics_params_value}}%, 当前值{{ printf "%.2f" $value }}%
Labelsarray<object>

Prometheus 告警规则的标签。

labelsobject

标签结构体。

Namestring

标签键。

123
Valuestring

标签值。

abc
Annotationsarray<object>

Prometheus 告警规则的注释。

annotationsobject

注释结构体。

Namestring

注释键。

123
Valuestring

注释值。

abc
Tagsarray<object>

告警规则标签。

tagsobject
Keystring

标签键。

type
Valuestring

标签值。

prod

示例

正常返回示例

JSON格式

{
  "RequestId": "337B8F7E-0A64-5768-9225-E9B3CF******",
  "PageBean": {
    "Total": 1,
    "Page": 1,
    "Size": 20,
    "AlertRules": [
      {
        "AlertId": 0,
        "AlertName": "arms-test",
        "UserId": "1131971649******",
        "RegionId": "cn-hangzhou",
        "AlertType": "APPLICATION_MONITORING_ALERT_RULE",
        "AlertStatus": "RUNNING",
        "CreatedTime": 1640333981000,
        "UpdatedTime": 1640333981000,
        "Extend": "{\\\"alarmContext\\\":\\\"{\\\\\\\"content\\\\\\\":\\\\\\\"报警名称:$报警名称\\\\\\\\n筛选条件: $筛选\\\\\\\\n报警时间: $报警时间\\\\\\\\n报警内容: $报警内容\\\\\\\\n注意!:该报警未收到恢复邮件之前,正在持续报警中,24小时后会再次提醒您!\\\\\\\",\\\\\\\"subTitle\\\\\\\":\\\\\\\"\\\\\\\"}\\\",\\\"alertWays\\\":\\\"[0,1]\\\",\\\"contactGroupIds\\\":\\\"381,5075\\\",\\\"notice\\\":\\\"{\\\\\\\"endTime\\\\\\\":1480607940000,\\\\\\\"noticeEndTime\\\\\\\":1480607940000,\\\\\\\"noticeStartTime\\\\\\\":1480521600000,\\\\\\\"startTime\\\\\\\":1480521600000}\\\"}",
        "NotifyStrategy": "ALERT_MANAGER",
        "Pids": [
          "[\"b590lhguqs@40d8deedfa9******\"]"
        ],
        "AutoAddNewApplication": false,
        "MetricsType": "JVM",
        "AlertRuleContent": {
          "Condition": "OR",
          "AlertRuleItems": [
            {
              "N": 1,
              "MetricKey": "appstat.jvm.non_heap_used",
              "Aggregate": "AVG",
              "Operator": "CURRENT_GTE",
              "Value": "1"
            }
          ]
        },
        "Filters": {
          "DimFilters": [
            {
              "FilterKey": "rootIp",
              "FilterOpt": "ALL",
              "FilterValues": [
                "null"
              ]
            }
          ],
          "CustomSLSFilters": [
            {
              "Key": "username",
              "Opt": "=",
              "Value": "test",
              "T": "null",
              "Show": false
            }
          ],
          "CustomSLSGroupByDimensions": [
            "[\"page\"]"
          ],
          "CustomSLSWheres": [
            "[\"t like '%api%'\"]"
          ]
        },
        "AlertCheckType": "STATIC",
        "ClusterId": "ceba9b9ea5b924dd0b6726d2de6******",
        "AlertGroup": 1,
        "PromQL": "node_memory_MemAvailable_bytes{} / node_memory_MemTotal_bytes{} * 100",
        "Duration": "1",
        "Level": "P2",
        "Message": "命名空间: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / 容器: {{$labels.container}} CPU使用率{{$labels.metrics_params_opt_label_value}} {{$labels.metrics_params_value}}%, 当前值{{ printf \"%.2f\" $value }}%",
        "Labels": [
          {
            "Name": "123",
            "Value": "abc"
          }
        ],
        "Annotations": [
          {
            "Name": "123",
            "Value": "abc"
          }
        ],
        "Tags": [
          {
            "Key": "type",
            "Value": "prod"
          }
        ]
      }
    ]
  }
}

错误码

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2024-05-29OpenAPI 返回结构发生变更查看变更详情
2023-12-21API 内部配置变更,不影响调用查看变更详情
2023-05-11OpenAPI 入参发生变更、OpenAPI 返回结构发生变更查看变更详情
2021-12-17OpenAPI 返回结构发生变更查看变更详情
2021-12-06新增 OpenAPI查看变更详情

更多示例

获取杭州地域的前端监控告警规则

请求示例:

http(s)://[Endpoint]/?Action=GetAlertRules
&AlertIds=["12345"]
&AlertNames=["前端监控默认报警"]
&RegionId=cn-hangzhou
&AlertType=BROWSER_MONITORING_ALERT_RULE
&AlertStatus=STOPPED
&Page=1
&Size=20
&公共请求参数

返回示例:

{
  "PageBean": {
    "AlertRules": [
       {
                "AlertId": 12345,
                "AlertName": "前端监控默认报警",
                "AlertRuleContent": {
                    "AlertRuleItems": [
                        {
                            "Aggregate": "AVG",
                            "MetricKey": "webstat.jsError.rate",
                            "N": 10,
                            "Operator": "CURRENT_GTE",
                            "Value": 0.2
                        },
                        {
                            "Aggregate": "SUM",
                            "MetricKey": "webstat.jsError.count",
                            "N": 10,
                            "Operator": "CURRENT_GTE",
                            "Value": 20.0
                        }
                    ],
                    "Condition": "AND"
                },
                "AlertStatus": "STOPPED",
                "AlertType": "BROWSER_MONITORING_ALERT_RULE",
                "AutoAddNewApplication": false,
                "CreatedTime": 1625824851000,
                "Extend": "{\"alarmContext\":\"{\\\"content\\\":\\\"报警名称:$报警名称\\\\\\\\n 筛选条件: $筛选\\\\\\\\n 报警时间: $报警时间\\\\\\\\n 报警内容: $报警内容\\\\\\\\n 注意!:该报警未收到恢复邮件之前,正在持续报警中,24 小时后会再次提醒您!\\\",\\\"subTitle\\\":\\\"\\\"}\",\"alertWays\":\"[0,1]\",\"contactGroupIds\":\"299\",\"notice\":\"{\\\"endTime\\\":1480607940000,\\\"noticeEndTime\\\":1480607940000,\\\"noticeStartTime\\\":1480521600000,\\\"startTime\\\":1480521600000}\"}",
                "Filters": {
                    "DimFilters": [
                        {
                            "FilterKey": "page",
                            "FilterOpt": "ALL",
                            "FilterValues": [
                                null
                            ]
                        }
                    ]
                },
                "MetricsType": "page",
                "Pids": [
                    "aokcdqn3ly@6a6c*******"
                ],
                "RegionId": "cn-hangzhou",
                "UpdatedTime": 1625824851000,
                "UserId": "1084*********"
            }
    ],
    "Size": 20,
    "Total": 1,
    "Page": 1
  },
  "RequestId": "A87CE2E7-8115-5A9C-8F4B-7C9DD7******"
}

获取杭州地域的 Prometheus 监控告警规则

请求示例:

http(s)://[Endpoint]/?Action=GetAlertRules
&AlertIds=["12345"]
&AlertNames=["ES 节点磁盘使用率大于 85%"]
&RegionId=cn-hangzhou
&AlertType=PROMETHEUS_MONITORING_ALERT_RULE
&AlertStatus=RUNNING
&Page=1
&Size=20
&公共请求参数

返回示例:

{
  "PageBean": {
    "AlertRules": [
      {
        "AlertName": "ES 节点磁盘使用率大于 85%",
        "CreatedTime": 1643188668035,
        "Message": "集群 ID: {{$labels.cluster_id}} 节点 IP: {{$labels.node_id}} 磁盘使用率  告警当时值{{ printf \"%.2f\" $value }}%\n 详情见 https://elasticsearch.console.aliyun.com/{{$labels.region}}/instances/{{$labels.cluster_id}}/base",
        "ClusterId": "n9p9****",
        "PromQL": "arms_cms_es_node_disk_utilization > 85",
        "AlertCheckType": "CUSTOM",
        "AlertRuleContent": {},
        "NotifyStrategy": "ALERT_MANAGER",
        "Duration": 10,
        "Labels": [
          {
            "Value": "cms_es",
            "Name": "_aliyun_cloud_product"
          }
        ],
        "AlertType": "PROMETHEUS_MONITORING_ALERT_RULE",
        "AlertId": 12345,
        "AlertGroup": -1,
        "Filters": {},
        "Annotations": [
          {
            "Value": "ES 节点磁盘使用率",
            "Name": "_aliyun_display_name"
          },
          {
            "Value": "集群 ID: {{$labels.cluster_id}} 节点 IP: {{$labels.node_id}} 磁盘使用率  告警当时值{{ printf \"%.2f\" $value }}%\n 详情见 https://elasticsearch.console.aliyun.com/{{$labels.region}}/instances/{{$labels.cluster_id}}/base",
            "Name": "message"
          },
          {
            "Value": "arms_cms_es_node_disk_utilization",
            "Name": "_aliyun_display_promql"
          }
        ],
        "Extend": "",
        "UserId": "10983*********",
        "AlertStatus": "RUNNING",
        "Level": "P6",
        "RegionId": "cn-hangzhou",
        "UpdatedTime": 1643188668035
      }
    ],
    "Size": 20,
    "Total": 1,
    "Page": 1
  },
  "RequestId": "A87CE2E7-8115-5A9C-8F4B-7C9DD7******"
}