檢視任務佇列狀態 - AWS Batch

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

檢視任務佇列狀態

在您建立任務佇列並提交任務之後,請務必能夠監控其進度。您可以使用任務詳細資訊頁面來檢閱、管理和監控您的任務佇列。

檢視任務佇列資訊

在 AWS Batch 主控台中,選取導覽窗格中的任務佇列,然後選擇所需的任務佇列以檢視其詳細資訊。在此頁面上,您可以檢閱和管理任務佇列,並查看佇列操作的其他資訊,例如任務佇列快照、任務狀態限制、環境順序、標籤和任務佇列的 JSON 程式碼。

任務佇列詳細資訊

本節提供任務佇列的概觀和維護選項。請務必注意,您可以在本節中找到 Amazon Resource Name (ARN)。

若要透過 尋找此資訊 AWS Command Line Interface,請使用 DescribeJobQueues操作搭配任務佇列名稱或對應的 ARN。

任務佇列快照

本節提供佇列中前 100 個RUNNABLE任務的靜態清單。您可以使用搜尋欄位,從結果區段中的任何資料欄搜尋資訊,以縮小清單範圍。快照結果區域中的任務會根據任務佇列的執行策略進行排序。對於first-in-first-out(FIFO) 任務佇列,任務的排序是根據提交時間。對於公平共用排程任務佇列,任務的排序是根據任務優先順序和共用用量。

由於結果是任務佇列的快照,因此結果清單不會自動更新。若要更新清單,請選擇區段頂端的重新整理。選擇任務的名稱超連結以導覽至任務詳細資訊,並檢視任務的狀態和其他相關資訊。

若要透過 尋找此資訊 AWS CLI,請使用 GetJobQueueSnapshot操作搭配任務佇列名稱或對應的 ARN。

aws batch get-job-queue-snapshot --job-queue my-sm-training-fifo-jq

任務狀態限制

使用此索引標籤來檢閱任務在取消之前可保持 RUNNABLE 狀態的時間組態資訊。

若要透過 尋找此資訊 AWS CLI,請使用 DescribeJobQueues操作搭配任務佇列名稱或對應的 ARN。

環境順序

如果您的任務佇列在多個環境中執行,此索引標籤會提供其順序和概觀。

若要透過 尋找此資訊 AWS CLI,請使用 DescribeJobQueues操作搭配任務佇列名稱或對應的 ARN。

標籤

使用此索引標籤來檢閱和管理與此任務佇列相關聯的標籤。

JSON

使用此索引標籤複製與此任務佇列相關聯的 JSON 程式碼。然後,您可以將 JSON 重複使用於 AWS CloudFormation 範本和 AWS CLI 指令碼。

監控服務任務

您可以使用多個 AWS Batch 命令來監控任務佇列中服務任務的狀態。服務任務是在 SageMaker Training 等 AWS 服務上執行的任務, AWS Batch 提供排程和佇列功能,同時目標服務會處理任務執行。

依狀態列出服務任務

使用 ListServiceJobs操作來檢視佇列中依狀態篩選的服務任務。服務任務可以有下列狀態:

  • SUBMITTED - 任務已提交但尚未處理

  • PENDING - 任務擱置中並等待資源

  • RUNNABLE - 任務已準備好在佇列中執行和等待

  • STARTING - 正在啟動任務

  • RUNNING - 任務目前正在執行

  • SCHEDULED - 任務已提交至目標服務,但尚未執行

  • SUCCEEDED - 任務已成功完成

  • FAILED - 任務無法完成

檢視佇列中正在執行的任務:

aws batch list-service-jobs \ --job-queue my-sm-training-fifo-jq \ --job-status RUNNING

檢視佇列中等待的任務:

aws batch list-service-jobs \ --job-queue my-sm-training-fifo-jq \ --job-status RUNNABLE

檢視已提交至 SageMaker 但尚未執行的任務:

aws batch list-service-jobs \ --job-queue my-sm-training-fifo-jq \ --job-status SCHEDULED

檢視所有成功的任務:

aws batch list-service-jobs \ --job-queue my-sm-training-fifo-jq \ --job-status SUCCEEDED

檢視故障任務以進行故障診斷:

aws batch list-service-jobs \ --job-queue my-sm-training-fifo-jq \ --job-status FAILED

篩選服務任務

您可以使用模式比對,依名稱篩選服務任務。如果篩選條件值以星號 (*) 結尾,則會比對 '*' 之前以字串開頭的任何任務名稱。

尋找名稱開頭為「訓練」的任務:

aws batch list-service-jobs \ --job-queue my-sm-training-fifo-jq \ --filters name=JOB_NAME,values=training*

尋找具有特定名稱的任務:

aws batch list-service-jobs \ --job-queue my-sm-training-fifo-jq \ --filters name=JOB_NAME,values=my-training-job-1,my-training-job-2

合併狀態和名稱篩選條件:

aws batch list-service-jobs \ --job-queue my-sm-training-fifo-jq \ --job-status RUNNING \ --filters name=JOB_NAME,values=production*

處理大型結果集

當您有許多服務任務時,請使用分頁來有效管理結果。

限制傳回的結果數量:

aws batch list-service-jobs \ --job-queue my-sm-training-fifo-jq \ --max-results 10

使用下一個字符來取得其他結果:

aws batch list-service-jobs \ --job-queue my-sm-training-fifo-jq \ --max-results 10 \ --next-token eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

取得詳細的服務任務資訊

使用 DescribeServiceJob操作取得特定服務任務的完整資訊,包括其目前狀態、服務資源識別符和詳細的嘗試資訊。

檢視特定任務的詳細資訊:

aws batch describe-service-job \ --job-id a4d6c728-8ee8-4c65-8e2a-9a5e8f4b7c3d

此命令會傳回任務的完整資訊,包括:

  • 任務 ARN 和目前狀態

  • 服務資源識別符 (例如 SageMaker Training 任務 ARN)

  • 排程優先順序和重試組態

  • 包含原始服務參數的服務請求承載

  • 包含開始和停止時間的詳細嘗試資訊

  • 來自目標服務的狀態訊息

監控 SageMaker 訓練任務

透過 監控 SageMaker Training 任務時 AWS Batch,您可以同時存取 AWS Batch 任務資訊和基礎 SageMaker Training 任務詳細資訊。

任務詳細資訊中的服務資源識別符包含 SageMaker Training 任務 ARN:

{ "latestAttempt": { "serviceResourceId": { "name": "TrainingJobArn", "value": "arn:aws:sagemaker:us-east-1:123456789012:training-job/my-training-job" } } }

您可以使用此 ARN 直接從 SageMaker 取得其他詳細資訊:

aws sagemaker describe-training-job \ --training-job-name my-training-job

透過檢查 AWS Batch 狀態和 SageMaker Training 任務狀態來監控任務進度。 AWS Batch 任務狀態會顯示整體任務生命週期,而 SageMaker Training 任務狀態則提供訓練程序的服務特定詳細資訊。

終止服務任務

使用 TerminateServiceJob操作停止執行中的服務任務。

終止特定服務任務:

aws batch terminate-service-job \ --job-id a4d6c728-8ee8-4c65-8e2a-9a5e8f4b7c3d \ --reason "Job terminated by user request"

當您終止服務任務時, 會 AWS Batch 停止任務並通知目標服務。對於 SageMaker 訓練任務,這也將停止 SageMaker AI 中的訓練任務。