
# 上报事件 - CreateEvents
#### 功能介绍
上报自定义事件。事件的time、project_id、event_source、event_name、event_type、sub_event_type、event_state、event_level、event_user、resource_id、resource_name字段相同时，则视为同一条事件。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/CES/doc?api=CreateEvents&version=v1)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-ces/ces_03_0045.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项             | 访问级别  | 资源类型（\*为必须） | 条件键 | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | ces:events:post | Write | -           | -   | -  | -      |
     
  
 
#### URI
POST /V1.0/{project_id}/events
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释**: 项目ID。用于明确项目归属，配置后可通过该ID查询项目下资产，可以通过调用API获取，也可以从控制台获取。获取方式请参见[获取项目ID](https://support.huaweicloud.com/api-ces/ces_03_0057.html)。 **约束限制**: 不涉及。 **取值范围**: 长度为\[1,64\]个字符。 **默认取值**: 不涉及。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| Content-Type | 否    | String | **参数解释**: 发送的实体的MIME类型。 **约束限制**: 不涉及。 **取值范围**: 长度为\[1,64\]个字符。 **默认取值**: 默认使用 application/json; charset=UTF-8，如果API是对象、镜像上传等接口，媒体类型可按照流类型的不同进行确定。           |
| X-Auth-Token | 否    | String | **参数解释**: 用户Token。Token认证，具体操作请参考[认证鉴权](https://support.huaweicloud.com/api-ces/ces_03_0011.html)。 **约束限制**: 不涉及。 **取值范围**: 长度为\[1,16384\]个字符。 **默认取值**: 不涉及。 |
   
表3请求Body参数 
| 参数       | 是否必选 | 参数类型                                                                                                                              | 描述                                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| \[数组元素\] | 是    | Array of [CreateEventsRequestBody] objects | **参数解释**： 上报自定义事件列表。 **约束限制**： 包含的指标数据对象个数为1\~100。 |
   
 表4CreateEventsRequestBody 
| 参数           | 是否必选 | 参数类型                                                                                                    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| event_name   | 是    | String                                                                                                  | **参数解释**： 事件名称。 **约束限制**： 不涉及。 **取值范围**： 必须以字母开头，只能包含0-9/a-z/A-Z/_，长度为\[1,64\]个字符。 **默认取值**： 不涉及。                                                                                                                                     |
| event_source | 是    | String                                                                                                  | **参数解释**： 事件来源。 **约束限制**： 不涉及。 **取值范围**： 格式为service.item，根据实际情况自定义配置。 service和item必须是字符串，必须以字母开头，只能包含0-9/a-z/A-Z/_，service.item，长度为\[3,32\]个字符。 **默认取值**： 不涉及。 |
| time         | 是    | Long                                                                                                    | **参数解释**： 事件发生时间。UNIX时间戳，单位毫秒。 **约束限制**： 因为客户端到服务器端有延时，因此插入数据的时间戳应该在\[当前时间-1小时+10秒，当前时间+10分钟-10秒\]区间内，保证到达服务器时不会因为传输时延造成数据不能插入数据库。 **取值范围**： 插入数据的时间戳应该在\[当前时间-1小时+10秒，当前时间+10分钟-10秒\]区间内。 **默认取值**： 不涉及。                             |
| detail       | 是    | [EventItemDetail] object | **参数解释**： 事件详情。 **约束限制**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   
 表5EventItemDetail 
| 参数             | 是否必选 | 参数类型                                                                                                                | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|:---|
| content        | 否    | String                                                                                                              | **参数解释**： 事件内容 **约束限制**： 不涉及。 **取值范围**： 长度为\[0,4096\]个字符。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| group_id       | 否    | String                                                                                                              | **参数解释**： 所属分组。 资源分组对应的ID，必须是已存在的分组ID。 通过[查询资源分组列表](https://support.huaweicloud.com/api-ces/ListResourceGroups.html)接口获取资源分组ID。 **约束限制**： 不涉及。 **取值范围**： 以rg开头，后跟字母、数字（大写或小写），长度只能为24个字符。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| resource_id    | 否    | String                                                                                                              | **参数解释**： 资源ID。 资源ID的查询方法： 1.登录管理控制台。 2.单击"计算 \> 弹性云服务器"。 在资源概览页可获取具体资源ID。 **约束限制**： 不涉及。 **取值范围**： 支持字母、数字、下划线（_）、中划线（-）和冒号（:），最大长度128个字符。例如，6a69bf28-ee62-49f3-9785-845dacd799ec。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| resource_name  | 否    | String                                                                                                              | **参数解释**： 资源名称。 **约束限制**： 不涉及。 **取值范围**： 支持字母 中文 数字@_ -. ，最大长度128个字符。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| event_state    | 否    | String                                                                                                              | **参数解释**： 事件状态。 **约束限制**： 不涉及。 **取值范围**： 枚举类型。 - normal：正常发生   - warning：异常   - incident：严重    **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                             |
| event_level    | 否    | String                                                                                                              | **参数解释**： 事件级别。 **约束限制**： 不涉及。 **取值范围**： 枚举类型：Critical, Major, Minor, Info。 - Critical: 紧急   - Major: 重要   - Minor: 次要   - Info: 提示    **默认取值**： 不涉及。 |
| event_user     | 否    | String                                                                                                              | **参数解释**： 事件用户。 **约束限制**： 不涉及。 **取值范围**： 支持字母 数字_ -/空格 ，长度为\[0,64\]个字符。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| event_type     | 否    | String                                                                                                              | **参数解释**： 事件类型。 **约束限制**： EVENT.SYS为系统事件，用户自己不能上报系统事件，只能传EVENT.CUSTOM。 **取值范围**： 枚举类型，EVENT.SYS或EVENT.CUSTOM。 - EVENT.SYS：系统事件   - EVENT.CUSTOM：自定义事件    **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| sub_event_type | 否    | String                                                                                                              | **参数解释**： 事件子类。 **约束限制**： 不涉及。 **取值范围**： 枚举类型 - SUB_EVENT.OPS: 运维事件   - SUB_EVENT.PLAN: 计划事件   - SUB_EVENT.CUSTOM: 自定义事件    **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                |
| dimensions     | 否    | Array of [MetricsDimension] objects | **参数解释**： 事件的维度，根据维度描述资源信息。 用于指定资源、资源分组的事件告警场景中，支持按维度配置告警规则。 **约束限制**： 目前最大支持4个维度。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   
 表6MetricsDimension 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|:---|
| name  | 是    | String | **参数解释** 资源维度，如：弹性云服务器，则维度为instance_id；目前最大支持4个维度，各服务资源的维度名称，请参阅具体云服务的文档。您可以直接从[支持监控的服务列表](https://support.huaweicloud.com/api-ces/ces_03_0059.html)页面导航至相应文档。 **约束限制** 不涉及 **取值范围** 由字母开头，后面可以包含字母、数字、_或-，长度为\[1,32\]个字符 **默认取值** 不涉及 |
| value | 是    | String | **参数解释** 资源维度值，为资源的实例ID，如：4270ff17-aba3-4138-89fa-820594c39755。 **约束限制** 不涉及 **取值范围** 长度为\[1,256\]个字符 **默认取值** 不涉及                                                                                                                     |
   
#### 响应参数
**状态码：201**
表7响应Body参数 
| 参数       | 参数类型                                                                                           | 描述    |
|:---|:---|:---|
| \[数组元素\] | Array of [Event] objects | 事件响应体 |
   
 表8Event 
| 参数         | 参数类型   | 描述                                                                                                                                                                                                                                                  |
|:---|:---|:---|
| event_id   | String | **参数解释**： 事件ID。 **取值范围**： 不涉及。 |
| event_name | String | **参数解释**： 事件名称。 **取值范围**： 不涉及。 |
   
**状态码：400**
表9响应Body参数 
| 参数 | 参数类型   | 描述    |
|:---|:---|:---|
| -  | String | 请求错误。 |
   
**状态码：401**
表10响应Body参数 
| 参数 | 参数类型   | 描述               |
|:---|:---|:---|
| -  | String | 未提供认证信息，或认证信息错误。 |
   
**状态码：403**
表11响应Body参数 
| 参数 | 参数类型   | 描述         |
|:---|:---|:---|
| -  | String | 请求页面被禁止访问。 |
   
**状态码：408**
表12响应Body参数 
| 参数 | 参数类型   | 描述             |
|:---|:---|:---|
| -  | String | 请求超出了服务器的等待时间。 |
   
**状态码：429**
表13响应Body参数 
| 参数 | 参数类型   | 描述    |
|:---|:---|:---|
| -  | String | 请求过多。 |
   
**状态码：500**
表14响应Body参数 
| 参数 | 参数类型   | 描述          |
|:---|:---|:---|
| -  | String | 请求未完成，服务异常。 |
   
**状态码：503**
表15响应Body参数 
| 参数 | 参数类型   | 描述            |
|:---|:---|:---|
| -  | String | 系统暂时不可用，请求受限。 |
   
#### 请求示例
```
[ {
  "event_name" : "systemInvaded",
  "event_source" : "financial.System",
  "time" : 1522121194000,
  "detail" : {
    "content" : "The financial system was invaded",
    "group_id" : "rg15221211517051YWWkEnVd",
    "resource_id" : "1234567890sjgggad",
    "resource_name" : "ecs001",
    "event_state" : "normal",
    "event_level" : "Major",
    "event_user" : "xiaokong"
  }
}, {
  "event_name" : "systemInvaded",
  "event_source" : "financial.System",
  "time" : 1522121194020,
  "detail" : {
    "content" : "The financial system was invaded",
    "group_id" : "rg15221211517051YWWkEnVd",
    "resource_id" : "1234567890sjgggad",
    "resource_name" : "ecs001",
    "event_state" : "normal",
    "event_level" : "Major",
    "event_user" : "xihong"
  }
} ]
```
#### 响应示例
**状态码：201**
Created
```
[ {
  "event_id" : "evdgiqwgedkkcvhdjcdu346",
  "event_name" : "systemInvaded"
}, {
  "event_id" : "evdgiqwgedkkcvhdjcdu347",
  "event_name" : "systemParalysis"
} ]
```
#### 状态码
| 状态码 | 描述                    |
|:---|:---|
| 201 | Created               |
| 400 | Bad Request           |
| 401 | Unauthorized          |
| 403 | Forbidden             |
| 408 | Request Timeout       |
| 429 | Too Many Requests     |
| 500 | Internal Server Error |
| 503 | Service Unavailable   |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-ces/ErrorCode.html)。
