

# Seguimiento del estado del trabajo e informes de finalización
<a name="batch-ops-job-status"></a>

Con las operaciones por lotes de S3, puede ver y actualizar el estado del trabajo, agregar notificaciones y registros, realizar un seguimiento de los errores del trabajo y generar informes de finalización. 

**Topics**
+ [Estados de los trabajos](#batch-ops-job-status-table)
+ [Actualización del estado del trabajo](#updating-job-statuses)
+ [Notificaciones y registro](#batch-ops-notifications)
+ [Seguimiento de los errores de los trabajos](#batch-ops-job-status-failure)
+ [Informes de finalización](#batch-ops-completion-report)
+ [Ejemplos: seguimiento de un trabajo de las operaciones por lotes de S3 en Amazon EventBridge a través de AWS CloudTrail](batch-ops-examples-event-bridge-cloud-trail.md)
+ [Ejemplos: informes de finalización de las operaciones por lotes de S3](batch-ops-examples-reports.md)

## Estados de los trabajos
<a name="batch-ops-job-status-table"></a>

Cuando se crea y ejecuta un trabajo, este pasa por una serie de estados. En la siguiente tabla se describen los estados y las posibles transiciones entre ellos. 


| Estado | Descripción | Transiciones | 
| --- | --- | --- | 
| `New` | Cuando se crean, los trabajos tienen el estado `New`. | Un trabajo pasa automáticamente al estado `Preparing` cuando Amazon S3 comienza a procesar el objeto del manifiesto. | 
| `Preparing` | Amazon S3 está procesando el objeto del manifiesto y otros parámetros del trabajo para configurar y ejecutar el trabajo. | Los trabajos pasan automáticamente al estado `Ready` cuando Amazon S3 termina de procesar el manifiesto y otros parámetros. En ese momento, el trabajo está listo para ejecutar la operación especificada sobre los objetos que se muestran en el manifiesto.Si el trabajo necesita confirmación antes de ejecutarse (por ejemplo: cuando se crea un trabajo utilizando la consola de Amazon S3), el trabajo pasa de `Preparing` a `Suspended`. El trabajo permanecerá con el estado `Suspended` hasta que confirme que desea ejecutarlo. | 
| `Suspended` | El trabajo necesita confirmación, pero aún no ha confirmado que desea ejecutarlo. Los únicos trabajos que necesitan confirmación son los que se crean con la consola de Amazon S3. Un trabajo que se crea con la consola pasa al estado `Suspended` inmediatamente después de `Preparing`. Una vez que confirme que desea ejecutar el trabajo y este pase al estado `Ready`, el trabajo nunca volverá a tener el estado `Suspended`. | Cuando confirme que desea ejecutar el trabajo, el estado cambiará a `Ready`. | 
| `Ready` | Amazon S3 está listo para comenzar a ejecutar las operaciones solicitadas en los objetos. | Los trabajos pasan automáticamente al estado `Active` cuando Amazon S3 comienza a ejecutarlos. El tiempo que un trabajo permanece en el estado `Ready` depende de si hay trabajos con una prioridad mayor que ya estén en ejecución y de lo que esos trabajos tarden en completarse. | 
| `Active` | Amazon S3 está ejecutando la operación solicitada en los objetos que aparecen en el manifiesto. Mientras un trabajo está en el estado `Active`, puede monitorear su progreso mediante la consola de Amazon S3 o la operación `DescribeJob` a través de la API REST, la AWS CLI o los SDK de AWS. | Un trabajo pasa al estado `Active` cuando ya no hay operaciones de objetos en ejecución. Este comportamiento puede producirse automáticamente; por ejemplo, cuando un trabajo se completa correctamente o encuentra un error. Este comportamiento también puede producirse como consecuencia de acciones de un usuario; por ejemplo, cuando se cancela un trabajo. El estado al que pasa el trabajo depende del motivo de la transición. | 
| `Pausing` | El trabajo tenía otro estado y ha pasado a `Paused`. | Los trabajos pasan automáticamente al estado `Paused` cuando finaliza la etapa de `Pausing`. | 
| `Paused` | Los trabajos adoptan el estado `Paused` si se envía un trabajo con una prioridad mayor mientras el trabajo actual está en ejecución. | Los trabajos con el estado `Paused` pasan automáticamente a `Active` cuando otros trabajos de mayor prioridad que impiden su ejecución se completan, encuentran un error o se suspenden. | 
| `Completing` | El trabajo tenía otro estado y ha pasado a `Complete`. | Los trabajos pasan automáticamente al estado `Complete` cuando finaliza la etapa de `Completing`. | 
| `Complete` | El trabajo ha terminado de ejecutar la operación solicitada en todos los objetos del manifiesto. La operación puede haberse ejecutado correctamente o con errores en cada objeto. Si configuró el trabajo para que se generara un informe de finalización, dicho informe estará disponible tan pronto como el trabajo adopte el estado `Complete`. | `Complete` es un estado terminal. Cuando un trabajo alcanza el estado `Complete`, ya no cambia a otros estados. | 
| `Cancelling` | El trabajo ha adoptado el estado `Cancelled`. | Los trabajos pasan automáticamente al estado `Cancelled` cuando finaliza la etapa de `Cancelling`. | 
| `Cancelled` | Se ha solicitado la cancelación del trabajo y Operaciones por lotes de S3 lo ha cancelado con éxito. El trabajo ya no enviará ninguna solicitud nueva a Amazon S3. | `Cancelled` es un estado terminal. Cuando un trabajo alcanza el estado `Cancelled`, ya no pasará a ningún otro estado. | 
| `Failing` | El trabajo ha adoptado el estado `Failed`. | Los trabajos pasan automáticamente al estado `Failed` cuando finaliza la etapa de `Failing`. | 
| `Failed` | Se ha producido un error en el trabajo y ya no está en ejecución. Para obtener más información acerca de los errores de los trabajos, consulte [Seguimiento de los errores de los trabajos](#batch-ops-job-status-failure). | `Failed` es un estado terminal. Cuando un trabajo alcanza el estado `Failed`, ya no pasará a ningún otro estado. | 

## Actualización del estado del trabajo
<a name="updating-job-statuses"></a>

Mediante los siguientes ejemplos de la AWS CLI y AWS SDK para Java, se actualiza el estado de un trabajo de Operaciones por lotes. Para obtener más información sobre uso de la consola de Amazon S3 para administrar trabajos de Operaciones por lotes, consulte [Uso de la consola de Simple Storage Service (Amazon S3) para administrar sus trabajos de operaciones por lotes de S3](batch-ops-managing-jobs.md#batch-ops-manage-console).

### Uso de AWS CLI
<a name="batch-ops-example-cli-update-job-status"></a>

Para utilizar los comandos de ejemplo siguientes, sustituya {{`user input placeholders`}} por su propia información. 
+ Si no especificó el parámetro `--no-confirmation-required` en el comando `create-job`, el trabajo permanece suspendido hasta que lo confirme estableciendo su estado en `Ready`. A continuación, Amazon S3 hace que el trabajo sea apto para su ejecución.

  ```
  aws s3control update-job-status \
      --region {{us-west-2}} \
      --account-id {{123456789012}} \
      --job-id {{00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c}} \
      --requested-job-status 'Ready'
  ```
+ Para cancelar el trabajo, establezca su estado en `Cancelled`.

  ```
  aws s3control update-job-status \
       --region {{us-west-2}} \
       --account-id {{123456789012}} \
       --job-id {{00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c}} \
       --status-update-reason "{{No longer needed}}" \
       --requested-job-status Cancelled
  ```

### Uso de AWS SDK para Java
<a name="batch-ops-examples-java-update-job-status"></a>

Para ver ejemplos de cómo actualizar el estado de un trabajo con el AWS SDK para Java, consulte [Actualizar el estado de un trabajo por lotes](https://docs.aws.amazon.com/AmazonS3/latest/API/s3-control_example_s3-control_UpdateJobStatus_section.html) en la *Referencia de la API de Amazon S3*.

## Notificaciones y registro
<a name="batch-ops-notifications"></a>

Además de solicitar informes de finalización, también puede obtener, revisar y auditar la actividad de Operaciones por lotes mediante AWS CloudTrail. Como Operaciones por lotes utiliza operaciones de API de Amazon S3 existentes para realizar tareas, esas tareas también emiten los mismos eventos que si se las llamara directamente. Por lo tanto, puede realizar un seguimiento y registrar el progreso de su trabajo y de todas sus tareas mediante las mismas herramientas y procesos de notificación, registro y auditoría que ya utiliza con Amazon S3. Para obtener más información, consulte los ejemplos de las siguientes secciones.

**nota**  
Operaciones por lotes genera eventos de administración y datos en CloudTrail durante la ejecución del trabajo. El volumen de estos eventos se escala con el número de claves en el manifiesto de cada trabajo. Para obtener más información, consulte la página de [Precios de CloudTrail](https://aws.amazon.com/cloudtrail/pricing/), que incluye ejemplos de cómo cambian los precios en función de la cantidad de registros de seguimiento que haya configurado en la cuenta. Para obtener información acerca de cómo configurar y registrar eventos para que se ajusten a sus necesidades, consulte [Crear su primer registro de seguimiento](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-tutorial.html#tutorial-step2) en la *Guía del usuario de AWS CloudTrail*.

Para obtener más información acerca de los eventos de Amazon S3, consulte [Notificaciones de eventos de Amazon S3](EventNotifications.md). 

## Seguimiento de los errores de los trabajos
<a name="batch-ops-job-status-failure"></a>

Si un trabajo de Operaciones por lotes de S3 se encuentra con un problema que impide su correcta ejecución (por ejemplo: no se puede leer el manifiesto especificado), se produce un error. Cuando un trabajo falla, genera uno o más códigos de error o motivos de error. Operaciones por lotes de S3 almacena los códigos de error y los motivos con el trabajo, para que pueda consultarlos solicitando los detalles del trabajo. Si solicitó un informe de finalización para el trabajo, los códigos de error y los motivos también aparecen aquí.

Para impedir que los trabajos ejecuten un número elevado de operaciones incorrectamente, Amazon S3 impone un umbral de errores de tareas en cada trabajo de Operaciones por lotes de S3. Una vez que un trabajo ha ejecutado al menos 1000 tareas, Amazon S3 monitoriza la tasa de errores de tareas. Si en algún momento la tasa de errores (el número de tareas con error en comparación con el número total de tareas ejecutadas) supera el 50 %, el trabajo genera un error. Si el trabajo deja de ejecutarse porque se ha superado el umbral de errores de tareas, es posible identificar la causa de dichos errores. Por ejemplo, podría ocurrir que, por accidente, haya incluido en el manifiesto algunos objetos que no existen en el bucket especificado. Después de solucionar los errores, podrá volver a enviar el trabajo.

**nota**  
Operaciones por lotes de S3 se ejecuta de forma asincrónica y las tareas no tienen que ejecutarse necesariamente en el mismo orden en el que los objetos aparecen en el manifiesto. Por tanto, no puede utilizar el orden del manifiesto para determinar qué tareas de los objetos se ejecutaron o no correctamente. En su lugar, puede examinar el informe de finalización del trabajo (si solicitó uno) o ver los registros de eventos de AWS CloudTrail para tratar de determinar el origen de los errores.

## Informes de finalización
<a name="batch-ops-completion-report"></a>

Al crear un trabajo, puede solicitar un informe de finalización. Siempre que Operaciones por lotes de S3 invoque correctamente al menos una tarea, Amazon S3 genera un informe de finalización cuando las tareas terminen de ejecutarse, encuentren algún error o se cancelen. Puede configurar el informe de finalización para incluir todas las tareas o solo las tareas con error. 

El informe de finalización incluye la configuración del trabajo, el estado y la información de cada tarea, incluidas la clave y la versión del objeto, el estado, los códigos de error y las descripciones de los errores. Los informes de finalización constituyen un mecanismo sencillo para ver los resultados de las tareas en un formato unificado sin necesidad de realizar ninguna configuración adicional. Los informes de finalización se cifran con cifrado de servidor con claves administradas por Amazon S3 (SSE-S3). Para ver un ejemplo de un informe de finalización, consulte [Ejemplos: informes de finalización de las operaciones por lotes de S3](batch-ops-examples-reports.md). 

Aunque no se configure un informe de finalización, es posible monitorizar y auditar el trabajo y las tareas con CloudTrail y Amazon CloudWatch. Para obtener más información, consulte los temas siguientes:

**Topics**
+ [Estados de los trabajos](#batch-ops-job-status-table)
+ [Actualización del estado del trabajo](#updating-job-statuses)
+ [Notificaciones y registro](#batch-ops-notifications)
+ [Seguimiento de los errores de los trabajos](#batch-ops-job-status-failure)
+ [Informes de finalización](#batch-ops-completion-report)
+ [Ejemplos: seguimiento de un trabajo de las operaciones por lotes de S3 en Amazon EventBridge a través de AWS CloudTrail](batch-ops-examples-event-bridge-cloud-trail.md)
+ [Ejemplos: informes de finalización de las operaciones por lotes de S3](batch-ops-examples-reports.md)