

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon ECS 服務部署狀態變更事件
<a name="ecs_service_deployment_events"></a>

Amazon ECS 會傳送具有 **ECS Deployment State Change** (ECS 部署狀態變更) 詳細類型的服務部署變更狀態事件。以下這個事件模式會用來建立 Amazon ECS 服務部署狀態變更事件的 EventBridge 規則。如需有關建立 EventBridge 規則的詳細資訊，請參閱 *Amazon EventBridge User Guide* 中的 [Getting started with Amazon EventBridge ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-get-started.html)。

```
{
    "source": [
        "aws.ecs"
    ],
    "detail-type": [
        "ECS Deployment State Change"
    ]
}
```

Amazon ECS 會傳送具有 `INFO` 和 `ERROR` 事件類型的事件。如需詳細資訊，請參閱[Amazon ECS 服務動作事件](ecs_service_events.md)

以下是服務部署狀態變更事件。

`SERVICE_DEPLOYMENT_IN_PROGRESS`  
服務部署正在進行。此事件會被傳送用於初始部署和回復部署。

`SERVICE_DEPLOYMENT_COMPLETED`  
服務部署完成。一旦服務在部署後達到穩定狀態，此事件將被傳送。

`SERVICE_DEPLOYMENT_FAILED`  
服務部署失敗。此事件會被傳送用於開啟部署斷路器邏輯的服務。

**Example 服務部署正在進行事件**  
服務部署正在進行事件會在初始和回復部署均已開始時交付。兩者之間的區別位於 `reason` 欄位。如需有關 EventBridge 參數的詳細資訊，請參閱 *Amazon EventBridge User Guide* 中的 [AWS service event metadata](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events-structure.html)。  
下列顯示初始部署開始的輸出範例。  

```
{
   "version": "0",
   "id": "ddca6449-b258-46c0-8653-e0e3a6EXAMPLE",
   "detail-type": "ECS Deployment State Change",
   "source": "aws.ecs",
   "account": "111122223333",
   "time": "2020-05-23T12:31:14Z",
   "region": "us-west-2",
   "resources": [ 
        "arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
   ],
   "detail": {
        "eventType": "INFO", 
        "eventName": "SERVICE_DEPLOYMENT_IN_PROGRESS",
        "deploymentId": "ecs-svc/123",
        "updatedAt": "2020-05-23T11:11:11Z",
        "reason": "ECS deployment deploymentId in progress."
   }
}
```
下列顯示回復部署開始的輸出範例。`reason` 欄位提供服務轉返至的部署 ID。  

```
{
   "version": "0",
   "id": "ddca6449-b258-46c0-8653-e0e3aEXAMPLE",
   "detail-type": "ECS Deployment State Change",
   "source": "aws.ecs",
   "account": "111122223333",
   "time": "2020-05-23T12:31:14Z",
   "region": "us-west-2",
   "resources": [ 
        "arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
   ],
   "detail": {
        "eventType": "INFO", 
        "eventName": "SERVICE_DEPLOYMENT_IN_PROGRESS",
        "deploymentId": "ecs-svc/123",
        "updatedAt": "2020-05-23T11:11:11Z",
        "reason": "ECS deployment circuit breaker: rolling back to deploymentId deploymentID."
   }
}
```

**Example 服務部署完成事件**  
任務部署完成狀態事件以下列格式交付。如需詳細資訊，請參閱[透過取代任務來部署 Amazon ECS 服務](deployment-type-ecs.md)。  

```
{
   "version": "0",
   "id": "ddca6449-b258-46c0-8653-e0e3aEXAMPLE",
   "detail-type": "ECS Deployment State Change",
   "source": "aws.ecs",
   "account": "111122223333",
   "time": "2020-05-23T12:31:14Z",
   "region": "us-west-2",
   "resources": [ 
        "arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
   ],
   "detail": {
        "eventType": "INFO", 
        "eventName": "SERVICE_DEPLOYMENT_COMPLETED",
        "deploymentId": "ecs-svc/123",
        "updatedAt": "2020-05-23T11:11:11Z",
        "reason": "ECS deployment deploymentID completed."
   }
}
```

**Example 服務部署失敗事件**  
任務部署失敗狀態事件以下列格式交付。服務部署失敗狀態事件只會被傳送用於開啟部署斷路器邏輯的服務。如需詳細資訊，請參閱[透過取代任務來部署 Amazon ECS 服務](deployment-type-ecs.md)。  

```
{
   "version": "0",
   "id": "ddca6449-b258-46c0-8653-e0e3aEXAMPLE",
   "detail-type": "ECS Deployment State Change",
   "source": "aws.ecs",
   "account": "111122223333",
   "time": "2020-05-23T12:31:14Z",
   "region": "us-west-2",
   "resources": [ 
        "arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
   ],
   "detail": {
        "eventType": "ERROR", 
        "eventName": "SERVICE_DEPLOYMENT_FAILED",
        "deploymentId": "ecs-svc/123",
        "updatedAt": "2020-05-23T11:11:11Z",
        "reason": "ECS deployment circuit breaker: task failed to start."
   }
}
```