

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

# 檢視 Amazon ECS 已停止任務錯誤
<a name="stopped-task-errors"></a>

如果啟動任務時有問題，您的任務可能會因為應用程式或組態錯誤而停止。例如，您執行任務，而任務顯示 `PENDING` 狀態，然後就消失。

 如果您的任務是由 Amazon ECS 服務建立，Amazon ECS 為維護服務所採取的動作會發佈在服務事件中。您可以在 AWS 管理主控台、 AWS CLI、 AWS SDKs、Amazon ECS API 或使用 SDKs 和 API 的工具中檢視事件。這些事件包括 Amazon ECS 停止並取代任務，因為任務中的容器已停止執行，或多次未通過 Elastic Load Balancing 的運作狀態檢查。

如果任務在 Amazon EC2 或外部電腦的容器執行個體上執行，您也可以檢視容器執行時期與 Amazon ECS 代理程式的日誌。這些日誌位於主機 Amazon EC2 執行個體或外部電腦上。如需詳細資訊，請參閱[檢視 Amazon ECS 容器代理程式日誌](logs.md)。

## 程序
<a name="view-stopped-errors-procedure"></a>

------
#### [ Console ]

**AWS 管理主控台**

您可透過主控台按下列步驟來檢查已停止任務是否有錯誤。若要檢視已停止任務，您必須變更篩選選項。

已停止任務只會在主控台中顯示 1 小時。

1. 開啟主控台，網址為 [https://console.aws.amazon.com/ecs/v2](https://console.aws.amazon.com/ecs/v2)。

1. 在導覽窗格中，選擇**叢集**。

1. 在**叢集**頁面上，選擇叢集。

1. 在 **Cluster : *name*** (叢集：名稱) 頁面上，選擇 **Tasks** (任務) 索引標籤。

1. 設定篩選條件以顯示已停止的任務。在**篩選所需狀態**欄位中選擇**已停止**。

   **Stopped** (已停止) 選項會顯示已停止的任務，而 **Any desired status** (任何所需狀態) 會顯示所有任務。

1. 選擇要檢查的已停止任務。

1. 在已停止任務的列中，在 **Last Status** (上次狀態) 欄中，選擇 **Stopped** (已停止)。

   快顯視窗隨即顯示停止原因。

------
#### [ AWS CLI ]

1. 列出叢集中停止的任務。輸出包含任務的 Amazon Resource Name (ARN)，您需要 Amazon Resource Name (ARN) 來描述任務。

   ```
   aws ecs list-tasks \
        --cluster cluster_name \
        --desired-status STOPPED \
        --region region
   ```

1. 描述已停止任務以擷取資訊。如需詳細資訊，請參閱《 * AWS Command Line Interface 參考*》中的 [describe-tasks](https://docs.aws.amazon.com/cli/latest/reference/ecs/describe-tasks.html)。

   ```
   aws ecs describe-tasks \
        --cluster cluster_name \
        --tasks arn:aws:ecs:region:account_id:task/cluster_name/task_ID \
        --region region
   ```

使用下列輸出參數。
+ `stopCode` – 停止代碼會指出任務停止的原因，例如 ResourceInitializationError
+ `StoppedReason` – 任務停止的原因。
+ `reason` (在 `containers` 結構中) – 原因會提供已停止容器的額外詳細資訊。

------

## 後續步驟
<a name="additional-resources"></a>

檢視已停止任務，取得相關錯誤成因資訊。如需詳細資訊，請參閱[Amazon ECS 已停止任務錯誤訊息](stopped-task-error-codes.md)。