

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Personalizando a localização do log para arquivos de log de etapas
<a name="emr-plan-debugging-step-log-customization"></a>

A partir da versão 7.11 do Amazon EMR, agora você pode personalizar o comportamento de registro do S3 para etapas por etapa. Em uma única etapa, você pode escolher um bucket S3 exclusivo para o qual os registros da etapa são carregados. Você também pode escolher uma chave KMS exclusiva que é usada para criptografar os registros da etapa em repouso, no S3. Essas opções têm precedência sobre todas as configurações de registro em todo o cluster que são definidas ao iniciar o cluster.

## Pré-requisitos
<a name="emr-plan-debugging-step-log-prerequisites"></a>
+ Seu cluster deve ter o registro de cluster ativado. Para obter mais informações, consulte [Configurar o registro e a depuração de clusters do Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-debugging.html).
+ Perfil da instância EC2:
  + O perfil de instância EC2 do seu cluster deve ter permissão para acessar o bucket S3 que será usado na configuração de registro da etapa.
  + O perfil da instância EC2 do seu cluster deve ter permissão para acessar a chave KMS que será usada na configuração de registro da etapa. Além disso, o perfil de instância EC2 do seu cluster deve permitir `kms:Decrypt` `kms:GenerateDataKey` ações.

## Configuração do log de etapas
<a name="emr-plan-debugging-step-log-config"></a>

Ao enviar uma etapa para o EMR, você pode configurar o comportamento de registro da etapa via. [StepMonitoringConfiguration](https://docs.aws.amazon.com/cli/latest/reference/emr/add-steps.html) O StepMonitoringConfiguration contém o MonitoringConfiguration objeto S3, no qual você pode especificar um bucket de registro do S3 e and/or uma chave KMS para a etapa.

O exemplo a seguir mostra como você pode personalizar o bucket S3 e a chave KMS de uma etapa a partir de um script 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
)
```

## Considerações
<a name="emr-plan-debugging-step-log-considerations"></a>
+ Se seu cluster não habilitar o registro em cluster, os registros de etapas não serão enviados para o S3, mesmo que você forneça um`StepMonitoringConfiguration`.
+ Se sua etapa executar um aplicativo Spark, os registros do contêiner do aplicativo também serão enviados para o local especificado no`StepMonitoringConfiguration`.
+ Você tem permissão para especificar um `LogUri` sem especificar um `EncryptionKeyArn` ou vice-versa. O EMR usará como padrão a configuração de todo o cluster para qualquer campo que seja omitido no. `StepMonitoringConfiguration`