檢視 Amazon ECS 已停止的任務錯誤 - Amazon Elastic Container Service

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

檢視 Amazon ECS 已停止的任務錯誤

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

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

如果您的任務在 Amazon EC2 或外部電腦上的容器執行個體上執行,您也可以查看容器執行期和 Amazon ECS 代理程式的日誌。這些日誌位於主機 Amazon EC2 執行個體或外部電腦上。如需詳細資訊,請參閱檢視 Amazon ECS 容器代理程式日誌

程序

Console
AWS Management Console

下列步驟可用來使用 主控台檢查已停止的任務是否有錯誤。若要查看已停止的任務,您必須變更篩選選項。

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

  1. 開啟主控台,網址為 https://console.aws.amazon.com/ecs/v2

  2. 在導覽窗格中,選擇叢集

  3. 叢集頁面上,選擇叢集。

  4. Cluster : name (叢集:名稱) 頁面上,選擇 Tasks (任務) 索引標籤。

  5. 設定篩選條件以顯示已停止的任務。針對篩選所需狀態,選擇已停止

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

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

  7. 在已停止任務的列中,在 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
  2. 描述停止的任務以擷取資訊。如需詳細資訊,請參閱《 AWS Command Line Interface 參考》中的 describe-tasks

    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結構中) - 原因提供已停止容器的其他詳細資訊。

後續步驟

檢視已停止的任務,以便您可以取得原因的相關資訊。如需詳細資訊,請參閱Amazon ECS 已停止任務錯誤訊息