

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Realice un seguimiento de la utilización de la capacidad de trabajo
<a name="track-capacity-utilization-service-jobs"></a>

AWS Batch proporciona varias operaciones de API que puede usar juntas para realizar un seguimiento de la utilización de la capacidad para los trabajos de servicio en una cola. El flujo de trabajo de supervisión depende del tipo de política de programación adjunta a la cola de trabajos.

Para las colas de trabajos que utilizan una política de programación de *primero en entrar, primero en salir (FIFO)*:

1. Compruebe la utilización total de las colas (). `GetJobQueueSnapshot`

1. Enumere los trabajos por estado, como `SCHEDULED` y `RUNNING` (`ListServiceJobs`).

1. Examine cualquier trabajo determinado (`DescribeServiceJob`).

En el caso de las colas de trabajo que utilizan una política de programación basada en el *reparto justo (FSS)* o la *gestión de cuotas (QM*):

1. Compruebe la utilización total de las colas (). `GetJobQueueSnapshot`

1. Ver la utilización por acción ()`GetJobQueueSnapshot`.

1. Enumere los trabajos por estado y recurso compartido que contribuyen activamente a la utilización, como `SCHEDULED` y `RUNNING` (`ListServiceJobs`).

1. Examine cualquier trabajo determinado (`DescribeServiceJob`).

En las siguientes secciones se explica cada paso en detalle.

Para obtener información sobre el seguimiento de la utilización de la capacidad para los trabajos de computación de ECS, EKS y Fargate, consulte. [Realice un seguimiento de la utilización de la capacidad de procesamiento](track-capacity-utilization-compute-jobs.md)

**Topics**
+ [Compruebe la utilización de las colas](#capacity-utilization-snapshots-service)
+ [Vea la utilización por acción](#share-utilization-monitoring-service)
+ [Enumere los trabajos de servicio por estado y por compartir](#list-service-jobs-by-share)
+ [Examine un trabajo de servicio específico](#examine-service-job)

## Compruebe la utilización de las colas
<a name="capacity-utilization-snapshots-service"></a>

El `queueUtilization` campo de la [https://docs.aws.amazon.com/batch/latest/APIReference/API_GetJobQueueSnapshot.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_GetJobQueueSnapshot.html)respuesta proporciona una point-in-time vista de la cantidad de capacidad informática que consumen los trabajos enviados desde una cola. La capacidad se mide en función del número de instancias de los trabajos de servicio.

En el caso de las colas de trabajo que utilizan una política de programación de reparto equitativo o gestión de cuotas, la respuesta también incluye un desglose por acción para que pueda ver cómo se distribuye la capacidad entre las acciones. Para obtener más información, consulte [Vea la utilización por acción](#share-utilization-monitoring-service).

### Ver la AWS CLI utilización de la capacidad ()
<a name="capacity-snapshots-service-cli"></a>

Utilice el [get-job-queue-snapshot](https://docs.aws.amazon.com/cli/latest/reference/batch/get-job-queue-snapshot.html)comando para recuperar una instantánea de la utilización de la capacidad de una cola de trabajos.

```
aws batch get-job-queue-snapshot \
    --job-queue {{my-job-queue}}
```

La respuesta varía en función de la política de programación adjunta a la cola de trabajos. Elija la pestaña correspondiente al tipo de política de programación para ver un ejemplo de respuesta.

------
#### [ First-in, first-out (FIFO) ]

El siguiente es un ejemplo de respuesta para una cola de trabajos de la FIFO. Como una cola FIFO no utiliza una política de programación, la respuesta no incluye el uso por recurso compartido.

```
{
    "frontOfQueue": {
        "jobs": [],
        "lastUpdatedAt": 1700000000000
    },
    "queueUtilization": {
        "totalCapacityUsage": [
            {
                "capacityUnit": "ml.m5.large",
                "quantity": 9.0
            }
        ],
        "lastUpdatedAt": 1700000000000
    }
}
```

En este ejemplo, la cola consume un total de 9 instancias en todos los trabajos despachados.

------
#### [ Fair-share scheduling (FSS) ]

El siguiente es un ejemplo de respuesta para una cola de trabajos repartida equitativamente. El `queueUtilization` objeto contiene una point-in-time instantánea de la capacidad total consumida por todos los trabajos enviados desde la cola, junto con un desglose por acción.

```
{
    "frontOfQueue": {
        "jobs": [],
        "lastUpdatedAt": 1700000000000
    },
    "queueUtilization": {
        "totalCapacityUsage": [
            {
                "capacityUnit": "NUM_INSTANCES",
                "quantity": 9.0
            }
        ],
        "fairshareUtilization": {
            "activeShareCount": 2,
            "topCapacityUtilization": [
                {
                    "shareIdentifier": "team-a",
                    "capacityUsage": [
                        {
                            "capacityUnit": "NUM_INSTANCES",
                            "quantity": 5.0
                        }
                    ]
                },
                {
                    "shareIdentifier": "team-b",
                    "capacityUsage": [
                        {
                            "capacityUnit": "NUM_INSTANCES",
                            "quantity": 4.0
                        }
                    ]
                }
            ]
        },
        "lastUpdatedAt": 1700000000000
    }
}
```

En este ejemplo, el `totalCapacityUsage` campo muestra que la cola consume un total de 9 instancias. El `fairshareUtilization` objeto muestra el desglose por acción. El recurso compartido `team-a` consume 5 instancias y el recurso compartido `team-b` consume 4 instancias.

------
#### [ Quota management (QM) ]

El siguiente es un ejemplo de respuesta para una cola de trabajos de administración de cuotas. El `queueUtilization` objeto contiene una point-in-time instantánea de la capacidad total consumida por todos los trabajos despachados desde la cola, junto con un desglose. per-quota-share El `frontOfQuotaShares` objeto muestra el primer `RUNNABLE` trabajo por cuota compartida.

```
{
    "frontOfQueue": {
        "jobs": [],
        "lastUpdatedAt": 1700000000000
    },
    "frontOfQuotaShares": {
        "quotaShares": {
            "team-a-share": [],
            "team-b-share": []
        },
        "lastUpdatedAt": 1700000000000
    },
    "queueUtilization": {
        "totalCapacityUsage": [
            {
                "capacityUnit": "ml.m5.large",
                "quantity": 9.0
            }
        ],
        "quotaShareUtilization": {
            "topCapacityUtilization": [
                {
                    "quotaShareName": "team-a-share",
                    "capacityUsage": [
                        {
                            "capacityUnit": "ml.m5.large",
                            "quantity": 5.0
                        }
                    ]
                },
                {
                    "quotaShareName": "team-b-share",
                    "capacityUsage": [
                        {
                            "capacityUnit": "ml.m5.large",
                            "quantity": 4.0
                        }
                    ]
                }
            ]
        },
        "lastUpdatedAt": 1700000000000
    }
}
```

En este ejemplo, el `totalCapacityUsage` campo muestra que la cola consume un total de 9 instancias. El `quotaShareUtilization` objeto muestra el per-quota-share desglose. La cuota de cuota `team-a-share` consume 5 instancias y la cuota de cuota `team-b-share` consume 4 instancias. El `frontOfQuotaShares` objeto muestra el primer `RUNNABLE` trabajo de cada cuota compartida, junto con la primera vez que el trabajo alcanzó ese puesto.

------

## Vea la utilización por acción
<a name="share-utilization-monitoring-service"></a>

En el caso de las colas de trabajo con una política de programación de reparto equitativo o de gestión de cuotas, la `queueUtilization` respuesta de `GetJobQueueSnapshot` incluye un objeto de utilización con una `topCapacityUtilization` matriz en la que se enumeran las principales acciones activas por consumo.

Esta información le ayuda a:
+ Identifique qué acciones consumen más recursos.
+ Compruebe que los recursos se distribuyen entre los recursos compartidos según lo previsto.
+ Detecte las acciones que puedan estar saturando o infrautilizando su asignación.
+ Determine si desea ajustar la configuración de su política de programación.

Para obtener más información sobre las políticas de programación equitativas, consulte. [Políticas de programación de reparto justo](job_scheduling.md)

Para obtener más información sobre las cuotas compartidas, consulte. [Cuotas compartidas](quota-shares.md)

## Enumere los trabajos de servicio por estado y por compartir
<a name="list-service-jobs-by-share"></a>

Tras identificar la cola general y el uso por recurso compartido, utilice la operación de [https://docs.aws.amazon.com/batch/latest/APIReference/API_ListServiceJobs.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_ListServiceJobs.html)API para encontrar los trabajos de servicio que contribuyen activamente a la utilización. Puede filtrar por estado de los trabajos para ver los trabajos que están `RUNNING` en otro estado o que se encuentran en otro estado. `SCHEDULED` En el caso de las colas con una política de programación de reparto equitativo o de gestión de cuotas, también puedes filtrar por identificador de reparto para limitar los resultados a un reparto específico.

**nota**  
Los `QUOTA_SHARE_NAME` filtros `SHARE_IDENTIFIER` y son los únicos filtros que se pueden combinar con el parámetro. `jobStatus` Cuando se utilizan otros filtros, se ignora el `jobStatus` parámetro.

### Listar trabajos de servicio (AWS CLI)
<a name="list-service-jobs-by-share-cli"></a>

Utilice el [list-service-jobs](https://docs.aws.amazon.com/cli/latest/reference/batch/list-service-jobs.html)comando con el `--job-status` parámetro para filtrar por estado.

Vea los trabajos de servicio en ejecución en su cola:

```
aws batch list-service-jobs \
    --job-queue {{my-job-queue}} \
    --job-status RUNNING
```

En el caso de las colas con una política de programación de reparto equitativo, utilice el `--filters` parámetro with `SHARE_IDENTIFIER` para mostrar los trabajos de un reparto específico. En el caso de las colas con una política de programación de gestión de cuotas, utilícelo `QUOTA_SHARE_NAME` para enumerar los trabajos correspondientes a un reparto de cuotas específico. Esto resulta útil cuando se identifica un recurso compartido con un alto consumo de capacidad y se desea ver qué trabajos son responsables.

Enumere solo los trabajos de `RUNNING` servicio de una acción de una lista de reparto equitativo:

```
aws batch list-service-jobs \
    --job-queue {{my-job-queue}} \
    --job-status RUNNING \
    --filters name=SHARE_IDENTIFIER,values="{{team-a}}"
```

Para las colas con una política de programación de gestión de cuotas, utilice el filtro: `QUOTA_SHARE_NAME`

```
aws batch list-service-jobs \
    --job-queue {{my-job-queue}} \
    --job-status RUNNING \
    --filters name=QUOTA_SHARE_NAME,values="{{my-quota-share}}"
```

El siguiente es un ejemplo de respuesta para enumerar los trabajos de servicio en ejecución filtrados por identificador de acciones en una cola de reparto equitativo.

```
{
    "jobSummaryList": [
        {
            "jobArn": "arn:aws:batch:us-east-1:123456789012:service-job/a4d6c728-8ee8-4c65-8e2a-9a5e8f4b7c3d",
            "jobId": "a4d6c728-8ee8-4c65-8e2a-9a5e8f4b7c3d",
            "jobName": "my-training-job",
            "serviceJobType": "SAGEMAKER_TRAINING",
            "status": "RUNNING",
            "shareIdentifier": "team-a",
            "createdAt": 1700000000000,
            "scheduledAt": 1700000060000,
            "startedAt": 1700000120000,
            "capacityUsage": [
                {
                    "capacityUnit": "ml.m5.large",
                    "quantity": 5.0
                }
            ],
            "latestAttempt": {
                "serviceResourceId": {
                    "name": "TrainingJobArn",
                    "value": "arn:aws:sagemaker:us-east-1:123456789012:training-job/my-training-job"
                }
            }
        }
    ]
}
```

En este ejemplo, la respuesta incluye el `shareIdentifier` campo que muestra que el trabajo pertenece al `team-a` recurso compartido y la `capacityUsage` matriz que muestra que el trabajo consume 5 instancias. `ml.m5.large` El `latestAttempt` objeto contiene el identificador de recursos de servicio que puede utilizar para obtener detalles adicionales del servicio de destino.

## Examine un trabajo de servicio específico
<a name="examine-service-job"></a>

Tras identificar un trabajo de servicio que le interese, utilice la [https://docs.aws.amazon.com/batch/latest/APIReference/API_DescribeServiceJob.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_DescribeServiceJob.html)operación para obtener información completa sobre el trabajo, incluido su estado actual, los identificadores de los recursos de servicio y la información detallada sobre los intentos.

Vea información detallada sobre un trabajo de servicio específico:

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

Este comando devuelve información completa sobre el trabajo, como:
+ el ARN del trabajo y estado actual,
+ Identificadores de recursos de servicio (como el ARN del trabajo de SageMaker formación)
+ la configuración de la prioridad de programación y reintentos,
+ la carga útil de solicitud de servicio que contiene los parámetros de servicio originales,
+ la información detallada sobre los intentos con las horas de inicio y finalización,
+ los mensajes de estado del servicio de destino.

### Examine el trabajo de formación subyacente SageMaker
<a name="track-sagemaker-training-jobs"></a>

Al supervisar los trabajos de SageMaker formación AWS Batch, puede acceder tanto a la información del AWS Batch puesto como a los detalles del puesto de SageMaker formación subyacente.

El identificador de recursos de servicio en los detalles del trabajo contiene el ARN del trabajo de SageMaker formación:

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

Puedes usar este ARN para obtener detalles adicionales directamente de: SageMaker

```
aws sagemaker describe-training-job \
    --training-job-name {{my-training-job}}
```

Supervise el progreso del trabajo comprobando tanto AWS Batch el estado como el estado del trabajo de SageMaker formación. El estado del AWS Batch puesto muestra el ciclo de vida general del trabajo, mientras que el estado del puesto de SageMaker formación proporciona detalles específicos del servicio sobre el proceso de formación.