

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

# 使用 自動修復 `jobStateTimeLimitActions`
<a name="job_stuck_in_runnable_time_limit_actions"></a>

或者，您可以透過 `[CreateJobQueue](https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateJobQueue.html)`和 [https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateJobQueue.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateJobQueue.html) API 動作來設定 `jobStateTimeLimitActions` 參數。

**注意**  
目前，對於連線至 Amazon ECS、Amazon EKS 或 Fargate 運算環境的任務佇列，您可以搭配 使用的唯一動作`jobStateLimitActions.action`是取消任務。

`jobStateTimeLimitActions` 參數用於指定一組在特定狀態下對任務 AWS Batch 執行的動作。您可以透過 `maxTimeSeconds` 欄位以秒為單位設定時間閾值。

當任務處於具有定義 `RUNNABLE`的狀態時`statusReason`， 會 AWS Batch 執行 `maxTimeSeconds` 經過之後指定的動作。

例如，您可以設定 `jobStateTimeLimitActions` 參數，為 `RUNNABLE` 狀態中等待足夠容量的任何任務等待最多 4 小時。您可以在取消任務之前`statusReason`將 設定為 `CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY`，並將 `maxTimeSeconds`設定為 14400，並允許下一個任務進入任務佇列的前端。

`ListJobs` 和 `DescribeJobs` API 動作傳回`statusReason`的值與您可以為 `jobStateTimeLimitActions.statusReason` 參數定義的值相同。不過，並非所有`statusReason`值都支援自動修復。

下列`statusReason`值支援 `jobStateTimeLimitActions`：
+ `CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY`
+ `MISCONFIGURATION:COMPUTE_ENVIRONMENT_MAX_RESOURCE`
+ `MISCONFIGURATION:JOB_RESOURCE_REQUIREMENT`

下列`statusReason`值不支援`jobStateTimeLimitActions`且需要手動調查：
+ `MISCONFIGURATION:SERVICE_ROLE_PERMISSIONS`
+ `ACTION_REQUIRED`
+ `UNDETERMINED`