事件通知旨在传递资源变化信息。被通知的事件可以是系统事件(包括运维事件和异常故障)、实例状态变化、挂载和卸载数据盘、创建快照等。通过设置事件通知,您还可以为事件配置消息处理中间件,实现事件驱动的自动化运维,取代SDK轮询的方式。
事件名称
设置事件通知后,在您收到的通知信息中,name为事件通知名称参数,其取值格式为<资源类型>:<事件类型>:<系统事件状态>。
<资源类型>:表示具体云服务器ECS的资源名称。例如Instance和Disk,分别代表ECS实例和块存储。
<事件类型>:表示事件名称。例如,因系统维护实例重启SystemMaintenance.Reboot、实例状态变化StateChange、抢占式实例被释放PreemptibleInstanceInterruption、完成云盘操作DiskOperationCompleted、完成创建快照CreateSnapshotCompleted等。
<系统事件状态>:系统事件经过默认响应或者人为操作后发生的状态变化。更多信息,请参见ECS系统事件概述。
说明仅实例系统事件和块存储系统事件具有<系统事件状态>。
通知格式
设置了事件通知后,事件会被推送到您设置的通知方式。以ECS实例发生状态变化的事件通知为例,非定制化JSON格式的通知如下所示。
如果您设置的通知方式有格式转换功能,请以实际效果为准。
{
"eventTime": "20181226T220114.058+0800",
"id": "9435EAD6-3CF6-4494-8F7A-3A********77",
"level": "INFO",
"name": "Instance:StateChange",
"product": "ECS",
"regionId": "cn-hangzhou",
"resourceId": "acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go",
"userId": "169070********30",
"ver": "1.0",
"content": {
"resourceId": "i-bp1ecr********5go2go",
"resourceType": "ALIYUN::ECS::Instance",
"state": "Stopping"
}
}
事件通知的顶层字段包含以下固定字段。
字段 | 说明 | 示例值 |
id | 事件ID。 | 9435EAD6-3CF6-4494-8F7A-3A********77 |
eventTime | 事件发生时间,采用UTC+8时区。 | 20181226T220114.058+0800 |
level | 事件级别。取值如下:
| INFO |
name | 事件名称。更多信息,请参见事件名称。 | Instance:StateChange |
product | 产品名称。取值为ECS。 | ECS |
regionId | 阿里云地域ID。更多信息,请参见地域和可用区。 | cn-hangzhou |
resourceId | 资源的ARN值(Aliyun Resource Name,阿里云全局资源描述符)。 | acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go |
userId | 云账号ID。 | 169070********30 |
content | 事件详情,包含一个或多个下级参数。具体格式描述请参见: | 无 |