更新时间:2025-08-07 GMT+08:00

查询事件告警信息

功能介绍

该接口用于查询对应用户的事件、告警。

调用方法

请参见如何调用API

URI

POST /v2/{project_id}/events

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,可以从控制台获取,也可以从调用API处获取。获取方式请参见:获取项目ID

表2 Query参数

参数

是否必选

参数类型

描述

type

String

查询类型:

  • active_alert:代表查询活动告警。

  • history_alert:代表查询历史告警。

不传或者传其他值,则返回指定查询条件的所有信息。

枚举值:

  • history_alert

  • active_alert

limit

Integer

查询数量限制值。不填默认值为1000。

marker

String

分页标记,初始为0,后续值为返回体中的next_marker参数。

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

从IAM服务获取的用户Token。获取方式请参见:获取Token

Content-Type

String

消息体的类型(格式)。指定类型为“application/json”。

枚举值:

  • application/json

Enterprise-Project-Id

String

企业项目id。

  • 查询单个企业项目下实例,填写企业项目id。

  • 查询所有企业项目下实例,填写“all_granted_eps”。

表4 请求Body参数

参数

是否必选

参数类型

描述

time_range

String

查询时间范围,主要用于解决客户端时间和服务端时间不一致情况下,查询最近N分钟的数据。另可用于精确查询某一段时间的数据。

例如:

  • -1.-1.60(表示最近60分钟),不管当前客户端是什么时间,都以服务端时间为准查询最近60分钟。

  • 1650852000000.1650852300000.5(表示GMT+8 2022-04-25 10:00:00至2022-04-25

10:05:00指定的5分钟)

格式如下:

startTimeInMillis.endTimeInMillis.durationInMinutes

参数解释:

  • startTimeInMillis: 查询的开始时间,格式为UTC毫秒,如果指定为-1,服务端将按(endTimeInMillis - durationInMinutes * 60 * 1000)计算开始时间。例如-1.1650852300000.5,则相当于1650852000000.1650852300000.5。

  • endTimeInMillis: 查询的结束时间,格式为UTC毫秒,如果指定为-1,服务端将按(startTimeInMillis + durationInMinutes * 60 * 1000)计算结束时间。如果计算出的结束时间大于当前系统时间,则使用当前系统时间。例如1650852000000.-1.5,则相当于1650852000000.1650852300000.5。

  • durationInMinutes:查询时间的跨度分钟数。 取值范围大于0并且大于等于(endTimeInMillis - startTimeInMillis) / (60 * 1000) - 1。当开始时间与结束时间都设置为-1时,系统会将结束时间设置为当前时间UTC毫秒值,并按(endTimeInMillis - durationInMinutes * 60 * 1000)计算开始时间。如:-1.-1.60(表示最近60分钟)。

约束与限制:

单次请求中,查询时长与周期需要满足以下条件: durationInMinutes * 60 / period <= 1440。

step

Long

统计步长。毫秒数,例如一分钟则填写为60000。

search

String

模糊查询匹配字段,可以为空。如果值不为空,可以模糊匹配。metadata字段为必选字段。

sort

sort object

返回列表的排序方式,可以为空。

metadata_relation

Array of RelationModel objects

查询条件组合,可以为空。

表5 sort

参数

是否必选

参数类型

描述

order_by

Array of strings

排序字段列表。会根据列表中定义顺序对返回列表最排序。当sort参数不为空时,order_by参数必填。

order

String

排序方式枚举值。asc代表正序,desc代表倒序。

枚举值:

  • asc

  • desc

表6 RelationModel

参数

是否必选

参数类型

描述

key

String

指定查询字段的key,对应metadata里面的key 。当metadata_relation参数不为空时 key参数必填。

value

Array of strings

查询条件中指定key的值。

relation

String

该条件与其他条件的组合方式。

  • AND:必须满足所有条件。

  • OR:可以满足其中一个条件。

  • NOT:必须不满足所有条件。

枚举值:

  • AND

  • OR

  • NOT

响应参数

状态码:200

表7 响应Body参数

参数

参数类型

描述

events

Array of ListEventModel objects

事件或者告警详情。

page_info

PageInfo object

分页信息

表8 ListEventModel

参数

参数类型

描述

starts_at

Long

事件或者告警产生的时间,UTC毫秒级时间戳。

ends_at

Long

事件或者告警清除的时间,UTC毫秒级时间戳,为0时表示未删除。

timeout

Long

告警自动清除时间。毫秒数,例如一分钟则填写为60000。默认清除时间为5天,对应数字为7200 * 60000(即:5天 * 24小时 * 60分钟 * 60000毫秒)。

metadata

Map<String,String>

事件或者告警的详细信息,为键值对形式。必须字段为:

  • event_name:事件或者告警名称,类型为String;

  • event_severity:事件级别枚举值。类型为String,四种类型 "Critical", "Major", "Minor",

  • event_type:事件类别枚举值。类型为String,event为告警事件,alarm为普通告警;

  • resource_provider:事件对应云服务名称。类型为String;

  • resource_type:事件对应资源类型。类型为String;

  • resource_id:事件对应资源信息。类型为String。

"Info";

annotations

Map<String,Object>

事件或者告警附加字段,可以为空。

attach_rule

Map<String,Object>

事件或者告警预留字段,为空。

id

String

事件或者告警id,系统会自动生成,上报无须填写该字段。

event_sn

String

告警流水号。

arrives_at

Long

事件到达系统时间,UTC毫秒级时间戳。

enterprise_project_id

String

事件或告警所属企业项目id。

policy

Map<String,Object>

开放告警策略

表9 PageInfo

参数

参数类型

描述

current_count

Integer

当前页事件、告警总数

previous_marker

String

前一个marker

next_marker

String

下一个marker

状态码:400

表10 响应Body参数

参数

参数类型

描述

error_code

String

调用失败响应码。

error_msg

String

调用失败响应信息描述。

error_type

String

调用失败类型。

trace_id

String

请求id。

状态码:401

表11 响应Body参数

参数

参数类型

描述

error_code

String

调用失败响应码。

error_msg

String

调用失败响应信息描述。

error_type

String

调用失败类型。

trace_id

String

请求id。

状态码:403

表12 响应Body参数

参数

参数类型

描述

error_code

String

调用失败响应码。

error_msg

String

调用失败响应信息描述。

error_type

String

调用失败类型。

trace_id

String

请求id。

状态码:500

表13 响应Body参数

参数

参数类型

描述

error_code

String

调用失败响应码。

error_msg

String

调用失败响应信息描述。

error_type

String

调用失败类型。

trace_id

String

请求id。

状态码:503

表14 响应Body参数

参数

参数类型

描述

error_code

String

调用失败响应码。

error_msg

String

调用失败响应信息描述。

error_type

String

调用失败类型。

trace_id

String

请求id。

请求示例

查询对应用户{project_id}的事件、告警列表。

https://{endpoint}/v2/{project_id}/events

{
  "time_range" : "-1.-1.30",
  "metadata_relation" : [ {
    "key" : "event_type",
    "relation" : "AND",
    "value" : [ "alarm" ]
  }, {
    "key" : "event_severity",
    "relation" : "AND",
    "value" : [ "Critical", "Major", "Minor", "Info" ]
  } ],
  "search" : "",
  "sort" : {
    "order_by" : [ "starts_at" ],
    "order" : "desc"
  }
}

响应示例

状态码:200

OK 请求响应成功。

{
  "events" : [ {
    "annotations" : {
      "alarm_fix_suggestion_zh_cn" : "修复建议",
      "alarm_probableCause_zh_cn" : "可能原因",
      "message" : "告警详情"
    },
    "arrives_at" : 16377362908000,
    "ends_at" : 0,
    "enterprise_project_id" : "0",
    "event_sn" : "1283514476372426755",
    "id" : "6775161208461480000",
    "metadata" : {
      "event_name" : "test",
      "event_severity" : "Major",
      "event_type" : "alarm",
      "resource_id" : "ecs123",
      "resource_provider" : "ecs",
      "resource_type" : "vm"
    },
    "policy" : { },
    "starts_at" : 16377362908000,
    "timeout" : 60000
  } ],
  "page_info" : {
    "current_count" : 1,
    "next_marker" : "",
    "previous_marker" : "0"
  }
}

状态码:400

BadRequest 非法请求。建议直接修改该请求,不要重试该请求。

{
  "error_code" : "AOM.08032002",
  "error_message" : "The request body is illegal",
  "error_type" : "SC_BAD_REQUEST"
}

状态码:401

Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。

{
  "error_code" : "AOM.0403",
  "error_message" : "auth failed.",
  "error_type" : "AUTH_FAILED",
  "trace_id" : null
}

状态码:403

Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。

{
  "error_code" : "AOM.0403",
  "error_message" : "auth failed.",
  "error_type" : "AUTH_FAILED",
  "trace_id" : null
}

状态码:500

InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。

{
  "error_code" : "APM.00000500",
  "error_message" : "Internal Server Error",
  "trace_id" : null
}

状态码:503

ServiceUnavailable 被请求的服务无效。建议直接修改该请求,不要重试该请求。

{
  "error_code" : "AOM.0503",
  "error_message" : "SC_NOT_IMPLEMENTED",
  "error_type" : "SC_NOT_IMPLEMENTED"
}

状态码

状态码

描述

200

OK 请求响应成功。

400

BadRequest 非法请求。建议直接修改该请求,不要重试该请求。

401

Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。

403

Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。

500

InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。

503

ServiceUnavailable 被请求的服务无效。建议直接修改该请求,不要重试该请求。

错误码

请参见错误码