

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.

# Personalización de la ubicación del registro de los archivos de registro de pasos
<a name="emr-plan-debugging-step-log-customization"></a>

A partir de la versión 7.11 de Amazon EMR, ahora puede personalizar el comportamiento de registro de S3 para cada paso. Para un solo paso, puede elegir un depósito de S3 único en el que se carguen los registros del paso. También puede elegir una clave KMS única que se utilice para cifrar los registros del paso en reposo, en S3. Estas opciones tienen prioridad sobre cualquier configuración de registro de todo el clúster que se configure al lanzar el clúster.

## Requisitos previos
<a name="emr-plan-debugging-step-log-prerequisites"></a>
+ El clúster debe tener habilitado el registro de clústeres. Para obtener más información, consulte [Configurar el registro y la depuración de clústeres de Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-debugging.html).
+ Perfil de instancia EC2:
  + El perfil de instancia EC2 de su clúster debe poder acceder al depósito S3 que se utilizará en la configuración de registro del paso.
  + El perfil de instancia EC2 de su clúster debe poder acceder a la clave KMS que se utilizará en la configuración de registro del paso. Además, el perfil de instancia EC2 del clúster debe permitir `kms:Decrypt` y `kms:GenerateDataKey` realizar acciones.

## Configuración del registro de pasos
<a name="emr-plan-debugging-step-log-config"></a>

Al enviar un paso a EMR, puede configurar el comportamiento de registro del paso mediante. [StepMonitoringConfiguration](https://docs.aws.amazon.com/cli/latest/reference/emr/add-steps.html) StepMonitoringConfiguration Contiene el MonitoringConfiguration objeto S3, en el que puede especificar un depósito de registro de S3 y and/or una clave KMS para el paso.

En el siguiente ejemplo, se muestra cómo personalizar el depósito de S3 y la clave KMS de un paso a partir de un script de Python:

```
import boto3

emr_client = boto3.client("emr", region_name="us-east-1")

# Define your step:
example_step = [
    {
        "Name": "Example Step for StepMonitoringConfiguration",
        "ActionOnFailure": "CONTINUE",
        "HadoopJarStep": {
            "Jar": "command-runner.jar",
            "Args": ["bash", "-c", "echo 1"]
        },
        "StepMonitoringConfiguration": {
            "S3MonitoringConfiguration": {
                "LogUri": "s3://your-s3-bucket/", # Replace this with your S3 bucket
                "EncryptionKeyArn": "arn:aws:kms:your-kms-key-arn" # Replace this with your KMS key ARN
            }
        }
    }
]

response = emr_client.add_job_flow_steps(
    JobFlowId="j-xxxxxxxxxxxxx",  # Replace this with your EMR cluster ID
    Steps=example_step
)
```

## Consideraciones
<a name="emr-plan-debugging-step-log-considerations"></a>
+ Si tu clúster no habilita el registro de clústeres, los registros de pasos no se cargarán en S3 aunque proporciones un`StepMonitoringConfiguration`.
+ Si tu paso ejecuta una aplicación de Spark, los registros del contenedor de la aplicación también se subirán a la ubicación especificada en el`StepMonitoringConfiguration`.
+ Puedes especificar un `LogUri` sin especificar un `EncryptionKeyArn` o viceversa. EMR utilizará de forma predeterminada la configuración de todo el clúster para cualquier campo que se omita en. `StepMonitoringConfiguration`