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

上报事件或告警信息

功能介绍

该接口用于上报事件或告警至AOM,同时支持清除告警信息。

调用方法

请参见如何调用API

URI

PUT /v2/{project_id}/push/events

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

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

表2 Query参数

参数

是否必选

参数类型

描述

action

String

接口请求动作:

  • 不传或者传其他值:代表上报告警或事件动作。该参数值默认为空,即默认上报告警或事件。

  • clear:代表清除告警动作。

枚举值:

  • clear

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

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

Content-Type

String

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

枚举值:

  • application/json

enterprise-project-id

String

告警所属的企业项目id。获取方式请参见:获取企业项目ID

如果不传该参数值,默认为default企业项目,ID为0。

表4 请求Body参数

参数

是否必选

参数类型

描述

events

Array of EventModel objects

事件或者告警详情。

表5 EventModel

参数

是否必选

参数类型

描述

starts_at

Long

指定上报的事件或者告警产生的时间。仅支持UTC毫秒级时间戳。

例如:2024-10-16 16:03:01需要通过工具转换成UTC毫秒级时间戳:1702759381000

当action值为空时,即上报事件或告警时需要时指定该参数。

ends_at

Long

指定清除的事件或者告警清除的时间。仅支持UTC毫秒级时间戳。默认值为0,表示没有清除告警。

例如:2024-10-16 16:03:01需要通过工具转换成UTC毫秒级时间戳:1702759381000

当action值为clear时,即清除告警时需要时指定该参数。

timeout

Long

指定AOM自动清除超期告警的时间段。单位:毫秒数。例如一分钟则填写为60000。默认清除超期5天的告警。对应毫秒数:7200 * 60000(即:5天 * 24小时 * 60分钟 * 60000毫秒)。最长时间不超过15天。当action值为空时,即上报告警时需要时指定该参数。

metadata

Map<String,String>

待上报的事件或者告警的详细信息,为key:value键值对形式。支持如下必填字段:

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

  • event_severity:事件或告警级别。类型为String,支持四种级别:

    • Critical:紧急

    • Major:重要

    • Minor:次要

    • Info:提示

  • event_type:事件或告警类别。类型为String,支持两种类别:

    • event:告警事件

    • alarm:普通告警

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

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

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

metadata中的value长度为1到2048字符串。

annotations

Map<String,Object>

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

attach_rule

Map<String,Object>

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

id

String

事件或者告警id,产生事件或告警时,系统会自动生成。

当action值为clear时,即清除告警时需要时指定该参数。上报事件或告警时无需传入该参数。

响应参数

状态码:204

No Content 表示请求成功,但没有内容返回。

状态码:400

表6 响应Body参数

参数

参数类型

描述

error_code

String

调用失败响应码。

error_msg

String

调用失败响应信息描述。

error_type

String

调用失败类型。

trace_id

String

请求id。

请求示例

上报一条名称为“test”、事件等级为“Major”且告警源为“ecs”的告警。

https://{EndPoint}/v2/{project_id}/push/events

{
  "events" : [ {
    "starts_at" : 1605232501000,
    "timeout" : 60000,
    "metadata" : {
      "event_name" : "test",
      "event_severity" : "Major",
      "event_type" : "alarm",
      "resource_provider" : "ecs",
      "resource_type" : "vm",
      "resource_id" : "ecs123"
    },
    "annotations" : {
      "alarm_probableCause_zh_cn" : "可能原因",
      "alarm_fix_suggestion_zh_cn" : "修复建议",
      "message" : "告警详情"
    },
    "attach_rule" : { }
  } ]
}

响应示例

状态码:400

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

{
  "error_code" : "AOM.0400",
  "error_msg" : "parse eventParam failed",
  "error_type" : "SC_BAD_REQUEST"
}

状态码

状态码

描述

204

No Content 表示请求成功,但没有内容返回。

400

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

401

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

403

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

500

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

503

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

错误码

请参见错误码