

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Amazon EC2 Auto Scaling 事件参考
<a name="ec2-auto-scaling-event-reference"></a>

使用 Amazon EventBridge，您可以创建匹配传入*事件*的*规则*，并将它们路由到*目标*进行处理。

**Topics**
+ [生命周期操作事件](#ec2-auto-scaling-lifecycle-action-events)
+ [扩缩成功的事件](#ec2-auto-scaling-successful-scaling-events)
+ [扩缩失败的事件](#ec2-auto-scaling-unsuccessful-scaling-events)

## 生命周期操作事件
<a name="ec2-auto-scaling-lifecycle-action-events"></a>

当您向 Auto Scaling 组添加生命周期挂钩时，Amazon EC2 Auto Scaling 会在实例过渡到等待状态 EventBridge时向发送事件。事件会尽可能生成。

**Topics**
+ [横向扩展生命周期操作](#launch-lifecycle-action)
+ [横向缩减生命周期操作](#terminate-lifecycle-action)

### 横向扩展生命周期操作
<a name="launch-lifecycle-action"></a>

在此示例事件中，由于启动生命周期挂钩的原因，Amazon EC2 Auto Scaling 已将一个实例移至 `Pending:Wait` 状态。

```
{
  "version": "0",
  "id": "{{12345678}}-{{1234}}-{{1234}}-{{1234}}-{{123456789012}}",
  "detail-type": "EC2 Instance-launch Lifecycle Action",
  "source": "aws.autoscaling",
  "account": "{{123456789012}}",
  "time": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
  "region": "{{us-west-2}}",
  "resources": [
    "{{auto-scaling-group-arn}}"
  ],
  "detail": { 
    "LifecycleActionToken": "{{87654321}}-{{4321}}-{{4321}}-{{4321}}-{{210987654321}}", 
    "AutoScalingGroupName": "{{my-asg}}", 
    "LifecycleHookName": "{{my-lifecycle-hook}}", 
    "EC2InstanceId": "i-{{1234567890abcdef0}}", 
    "LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING",
    "NotificationMetadata": "{{additional-info}}",
    "Origin": "{{EC2}}",
    "Destination": "{{AutoScalingGroup}}"
  } 
}
```

### 横向缩减生命周期操作
<a name="terminate-lifecycle-action"></a>

在此示例事件中，由于终止生命周期挂钩的原因，Amazon EC2 Auto Scaling 已将一个实例移至 `Terminating:Wait` 状态。

**重要**  
当自动扩缩组在横向缩减时将实例退回暖池的情况下，将实例退回暖池也会生成 `EC2 Instance-terminate Lifecycle Action` 事件。当实例在横向缩减时移至等待状态的情况下，所传递的事件都将 `WarmPool` 作为 `Destination` 的值。有关更多信息，请参阅 [Instance reuse policy](ec2-auto-scaling-warm-pools.md#instance-reuse-policy)。

```
{
  "version": "0",
  "id": "{{12345678}}-{{1234}}-{{1234}}-{{1234}}-{{123456789012}}",
  "detail-type": "EC2 Instance-terminate Lifecycle Action",
  "source": "aws.autoscaling",
  "account": "{{123456789012}}",
  "time": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
  "region": "{{us-west-2}}",
  "resources": [
    "{{auto-scaling-group-arn}}"
  ],
  "detail": { 
    "LifecycleActionToken":"{{87654321}}-{{4321}}-{{4321}}-{{4321}}-{{210987654321}}", 
    "AutoScalingGroupName":"{{my-asg}}", 
    "LifecycleHookName":"{{my-lifecycle-hook}}", 
    "EC2InstanceId":"i-{{1234567890abcdef0}}", 
    "LifecycleTransition":"autoscaling:EC2_INSTANCE_TERMINATING", 
    "NotificationMetadata":"{{additional-info}}",
    "Origin": "AutoScalingGroup",
    "Destination": "{{EC2}}"
  } 
}
```

## 扩缩成功的事件
<a name="ec2-auto-scaling-successful-scaling-events"></a>

以下示例演示扩缩成功的事件的事件类型。事件会尽可能生成。

**Topics**
+ [横向扩展成功的事件](#launch-successful)
+ [横向缩减成功的事件](#terminate-successful)

### 横向扩展成功的事件
<a name="launch-successful"></a>

在此示例事件中，Amazon EC2 Auto Scaling 成功启动了一个实例。

```
{
  "version": "0",
  "id": "{{12345678}}-{{1234}}-{{1234}}-{{1234}}-{{123456789012}}",
  "detail-type": "EC2 Instance Launch Successful",
  "source": "aws.autoscaling",
  "account": "{{123456789012}}",
  "time": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
  "region": "{{us-west-2}}",
  "resources": [
    "{{auto-scaling-group-arn}}",
    "{{instance-arn}}"
  ],
  "detail": {
    "StatusCode": "InProgress",
    "Description": "Launching a new EC2 instance: i-{{12345678}}",
    "AutoScalingGroupName": "{{my-asg}}",
    "ActivityId": "{{87654321}}-{{4321}}-{{4321}}-{{4321}}-{{210987654321}}",
    "Details": {
      "Availability Zone": "{{us-west-2b}}",
      "Subnet ID": "subnet-{{12345678}}"
    },
    "RequestId": "{{12345678}}-{{1234}}-{{1234}}-{{1234}}-{{123456789012}}",
    "StatusMessage": "",
    "EndTime": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
    "EC2InstanceId": "i-{{1234567890abcdef0}}",
    "StartTime": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
    "Cause": "{{description-text}}",
    "Origin": "{{EC2}}",
    "Destination": "{{AutoScalingGroup}}"
  }
}
```

### 横向缩减成功的事件
<a name="terminate-successful"></a>

在此示例事件中，Amazon EC2 Auto Scaling 成功终止了一个实例。

**重要**  
当自动扩缩组在横向缩减时将实例退回暖池的情况下，将实例退回暖池也会生成 `EC2 Instance Terminate Successful` 事件。实例成功退回暖池时传送的事件都将 `WarmPool` 作为 `Destination` 的值。有关更多信息，请参阅 [Instance reuse policy](ec2-auto-scaling-warm-pools.md#instance-reuse-policy)。

```
{
  "version": "0",
  "id": "{{12345678}}-{{1234}}-{{1234}}-{{1234}}-{{123456789012}}",
  "detail-type": "EC2 Instance Terminate Successful",
  "source": "aws.autoscaling",
  "account": "{{123456789012}}",
  "time": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
  "region": "{{us-west-2}}",
  "resources": [
    "{{auto-scaling-group-arn}}",
    "{{instance-arn}}"
  ],
  "detail": {
    "StatusCode": "InProgress",
    "Description": "Terminating EC2 instance: i-{{12345678}}",
    "AutoScalingGroupName": "{{my-asg}}",
    "ActivityId": "{{87654321}}-{{4321}}-{{4321}}-{{4321}}-{{210987654321}}",
    "Details": {
      "Availability Zone": "{{us-west-2b}}",
      "Subnet ID": "subnet-{{12345678}}"
    },
    "RequestId": "{{12345678}}-{{1234}}-{{1234}}-{{1234}}-{{123456789012}}",
    "StatusMessage": "",
    "EndTime": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
    "EC2InstanceId": "i-{{1234567890abcdef0}}",
    "StartTime": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
    "Cause": "{{description-text}}",
    "Origin": "AutoScalingGroup",
    "Destination": "{{EC2}}"
  }
}
```

## 扩缩失败的事件
<a name="ec2-auto-scaling-unsuccessful-scaling-events"></a>

以下示例演示扩缩失败的事件的事件类型。事件会尽可能生成。

**Topics**
+ [横向扩展失败的事件](#launch-unsuccessful)
+ [横向缩减失败的事件](#terminate-unsuccessful)

### 横向扩展失败的事件
<a name="launch-unsuccessful"></a>

在此示例事件中，Amazon EC2 Auto Scaling 未能启动一个实例。

```
{
  "version": "0",
  "id": "{{12345678}}-{{1234}}-{{1234}}-{{1234}}-{{123456789012}}",
  "detail-type": "EC2 Instance Launch Unsuccessful",
  "source": "aws.autoscaling",
  "account": "{{123456789012}}",
  "time": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
  "region": "{{us-west-2}}",
  "resources": [
    "{{auto-scaling-group-arn}}",
    "{{instance-arn}}"
  ],
  "detail": {
    "StatusCode": "Failed",
    "AutoScalingGroupName": "{{my-asg}}",
    "ActivityId": "{{87654321}}-{{4321}}-{{4321}}-{{4321}}-{{210987654321}}",
    "Details": {
      "Availability Zone": "{{us-west-2b}}",
      "Subnet ID": "subnet-{{12345678}}"
    },
    "RequestId": "{{12345678}}-{{1234}}-{{1234}}-{{1234}}-{{123456789012}}",
    "StatusMessage": "{{message-text}}",
    "EndTime": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
    "EC2InstanceId": "i-{{1234567890abcdef0}}",
    "StartTime": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
    "Cause": "{{description-text}}",
    "Origin": "{{EC2}}",
    "Destination": "{{AutoScalingGroup}}"
  }
}
```

### 横向缩减失败的事件
<a name="terminate-unsuccessful"></a>

在此示例事件中，Amazon EC2 Auto Scaling 未能终止一个实例。

**重要**  
当自动扩缩组在横向缩减时将实例退回暖池的情况下，未能将实例退回暖池也会生成 `EC2 Instance Terminate Unsuccessful` 事件。实例未能成功退回暖池时传送的事件都将 `WarmPool` 作为 `Destination` 的值。有关更多信息，请参阅 [Instance reuse policy](ec2-auto-scaling-warm-pools.md#instance-reuse-policy)。

```
{
  "version": "0",
  "id": "{{12345678}}-{{1234}}-{{1234}}-{{1234}}-{{123456789012}}",
  "detail-type": "EC2 Instance Terminate Unsuccessful",
  "source": "aws.autoscaling",
  "account": "{{123456789012}}",
  "time": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
  "region": "{{us-west-2}}",
  "resources": [
    "{{auto-scaling-group-arn}}",
    "{{instance-arn}}"
  ],
  "detail": {
    "StatusCode": "Failed",
    "AutoScalingGroupName": "{{my-asg}}",
    "ActivityId": "{{87654321}}-{{4321}}-{{4321}}-{{4321}}-{{210987654321}}",
    "Details": {
      "Availability Zone": "{{us-west-2b}}",
      "Subnet ID": "subnet-{{12345678}}"
    },
    "RequestId": "{{12345678}}-{{1234}}-{{1234}}-{{1234}}-{{123456789012}}",
    "StatusMessage": "{{message-text}}",
    "EndTime": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
    "EC2InstanceId": "i-{{1234567890abcdef0}}",
    "StartTime": "{{yyyy}}-{{mm}}-{{dd}}T{{hh}}:{{mm}}:{{ss}}Z",
    "Cause": "{{description-text}}",
    "Origin": "AutoScalingGroup",
    "Destination": "{{EC2}}"
  }
}
```