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

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

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

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

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

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

程序

Console
AWS Management Console

下列步驟可用來使用新的 檢查已停止的任務是否有錯誤 AWS Management Console。

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

  1. https://console.aws.amazon.com/ecs/v2 開啟主控台。

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

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

  4. 叢集 上:name 頁面,選擇任務索引標籤。

  5. 設定篩選條件以顯示已停止的任務。針對篩選所需狀態,選擇 Stopped (已停止) 或 Any desired status (任何所需狀態)。

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

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

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

    快顯視窗會顯示停止的原因。

AWS CLI
  1. 列出叢集中停止的任務。輸出包含任務的 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已停止任務錯誤訊息