

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Pubblica i log di Amazon EMR su Logs CloudWatch
<a name="emr-plan-logging-cw"></a>

## Panoramica di
<a name="emr-plan-logging-cw-overview"></a>

Amazon EMR su EC2 offre l'integrazione nativa con Amazon CloudWatch Logs, consentendoti di inviare i log del cluster direttamente a CloudWatch Questa funzionalità semplifica la gestione dei log e fornisce un accesso centralizzato ai log del cluster EMR per il monitoraggio, la risoluzione dei problemi e l'analisi.

Con CloudWatch la registrazione abilitata, è possibile acquisire e trasmettere automaticamente i log dai cluster EMR ai gruppi di log. CloudWatch Ciò include i registri di esecuzione delle fasi, i registri dei driver Spark e i registri degli esecutori Spark, che offrono una visibilità completa sulle operazioni del cluster e sul comportamento delle applicazioni.

La funzionalità CloudWatch di registrazione è disponibile a partire dalla release 7.11.0 di Amazon EMR ed è configurata tramite `MonitoringConfiguration` il parametro durante la creazione del cluster. Una volta abilitata, i log vengono trasmessi automaticamente in streaming CloudWatch man mano che vengono generati, fornendo un accesso quasi in tempo reale ai dati di registro tramite la console o l'API. CloudWatch 

## Prerequisiti
<a name="emr-plan-logging-cw-prerequisites"></a>

Prima di abilitare CloudWatch la registrazione per il cluster EMR, assicurati che siano soddisfatti i seguenti prerequisiti:
+ **Versione di Amazon EMR:** il cluster deve utilizzare Amazon EMR versione 7.11.0 o successiva.
+ **CloudWatch Applicazione agente:** l' CloudWatch agente Amazon deve essere installato sul tuo cluster.
+ **Autorizzazioni IAM:** il profilo dell'istanza EC2 per il cluster deve disporre delle autorizzazioni CloudWatch Logs richieste.
+ **Endpoint VPC (per sottoreti private):** se il cluster si trova in una sottorete privata, è necessario configurare gli endpoint VPC per i log. CloudWatch 

## Permissions
<a name="emr-plan-logging-cw-permissions"></a>

L' CloudWatch agente richiede autorizzazioni specifiche AWS Identity and Access Management(IAM) per creare gruppi di log, creare flussi di log e scrivere eventi di registro nei registri. CloudWatch Queste autorizzazioni devono essere collegate al profilo dell'istanza Amazon EC2 utilizzato dal cluster EMR.

### Policy IAM richiesta
<a name="emr-plan-logging-cw-required-policy"></a>

Aggiungi la seguente policy al tuo [profilo di istanza EC2 per Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-iam-role-for-ec2.html) per concedere le autorizzazioni necessarie:

```
{
  "Version": "2012-10-17", 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "logs:PutLogEvents",
        "logs:PutRetentionPolicy",
        "logs:DescribeLogStreams",
        "logs:DescribeLogGroups",
        "logs:CreateLogStream",
        "logs:CreateLogGroup"
      ],
      "Resource": "*",
      "Sid": "AllowCWACloudWatchLogs"
    }
  ]
}
```

### Allegare la policy
<a name="emr-plan-logging-cw-permissions-attaching"></a>

Per allegare questa policy al tuo profilo di istanza EC2 per EMR:

1. Passare alla IAM console (Console IAM).

1. Individua il profilo dell'istanza utilizzato dal tuo cluster EMR, che in genere è. `EMR_EC2_DefaultRole`

1. Crea una nuova policy in linea o allega una policy gestita dal cliente con le autorizzazioni di cui sopra.

1. Salva le modifiche alla politica.

Per ulteriori informazioni sui ruoli IAM per Amazon EMR, consulta [Configura i ruoli IAM per le autorizzazioni di Amazon EMR per AWS servizi e risorse nella](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-iam-roles.html) Amazon EMR Management Guide.

## Configurazione della registrazione CloudWatch
<a name="emr-plan-logging-cw-config"></a>

È possibile abilitare CloudWatch la registrazione durante la creazione di un nuovo cluster EMR tramite AWS la console di gestione AWS CLI, oppure. AWS SDKs La configurazione viene specificata tramite il `MonitoringConfiguration` parametro.

### Utilizzo della console AWS di gestione
<a name="emr-plan-logging-cw-config-console"></a>

Per creare un cluster con CloudWatch registrazione dalla console:

1. Accedere alla console [AWS EMR.](https://console.aws.amazon.com/emr/)

1. Scegli **Crea cluster**.

1. In **Nome e applicazioni**, seleziona una versione di Amazon EMR 7.11.0 o successiva.

1. In **Application bundle**, seleziona le applicazioni che desideri installare e assicurati che Amazon CloudWatch Agent sia incluso nelle tue selezioni.

1. In **Cluster logs**, seleziona l'opzione per **pubblicare log specifici del cluster su Amazon. CloudWatch**

1. (Facoltativo) Configura le seguenti impostazioni:
   + **Nome del gruppo di log: nome** del gruppo di log personalizzato. Il valore predefinito è `/aws/emr/{cluster_id}`.
   + **Prefisso del flusso di registro**: prefisso per i nomi dei flussi di registro L'impostazione predefinita è. `empty`
   + CloudWatch Chiave **KMS: chiave** KMS ARN per la crittografia dei log (opzionale).
   + **Tipi di registro**: seleziona i tipi di registro da acquisire (impostazione predefinita: step e driver Spark)

1. Completa le restanti impostazioni di configurazione del cluster.

1. Scegli **Crea cluster**.

Dopo aver creato il cluster, puoi accedere al link CloudWatch Logs dalla pagina **EMR Cluster Details **in Gestione cluster**** **→ Log destination in Amazon**. CloudWatch

### Usando il AWS CLI
<a name="emr-plan-logging-cw-config-using-the-cli"></a>

È possibile abilitare CloudWatch la registrazione utilizzando AWS CLI il `create-cluster` comando. L' CloudWatch agente deve essere incluso nel `--applications` parametro e la registrazione viene configurata tramite il `--monitoring-configuration` parametro.

#### Esempio: configurazione predefinita
<a name="emr-plan-logging-cw-config-default-configuration"></a>

EMR acquisirà automaticamente i registri dei passaggi e solo i registri dei driver Spark e li invierà al gruppo di log predefinito.

```
aws emr create-cluster \
  --name "EMR cluster with CloudWatch Logs" \
  --release-label emr-7.11.0 \
  --applications Name=Spark Name=AmazonCloudWatchAgent \
  --instance-type m7g.2xlarge \
  --instance-count 3 \
  --use-default-roles \
  --monitoring-configuration '{
    "CloudWatchLogConfiguration": {
      "Enabled": true
    }
  }'
```

Quando si utilizza la configurazione predefinita:
+ **Nome del gruppo di log:** `/aws/emr/{cluster_id}` (dove `{cluster_id}` viene automaticamente sostituito dall'ID del cluster).
+ **Prefisso del flusso di registro:** vuoto (nessun prefisso).
+ **Tipi di registro:** `STEP_LOGS` e `SPARK_DRIVER` abilitati, ciascuno dei quali acquisisce sia. `STDOUT` `STDERR`
+ **Crittografia:** nessuna chiave gestita dal cliente (utilizza la crittografia CloudWatch lato server per impostazione predefinita)

#### Esempio: configurazione personalizzata
<a name="emr-plan-logging-cw-config-default-configuration-custom"></a>

Questo esempio dimostra una configurazione personalizzata con nomi di gruppi di log specifici, crittografia KMS e tipi di log selettivi.

```
aws emr create-cluster \
  --name "EMR cluster with custom CloudWatch Logs" \
  --release-label emr-7.11.0 \
  --applications Name=Spark Name=AmazonCloudWatchAgent \
  --instance-type m7g.2xlarge \
  --instance-count 3 \
  --use-default-roles \
  --monitoring-configuration '{
    "CloudWatchLogConfiguration": {
      "Enabled": true,
      "LogGroupName": "/my-company/emr/production",
      "LogStreamNamePrefix": "cluster-prod",
      "EncryptionKeyArn": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012",
      "LogTypes": {
        "STEP_LOGS": ["STDOUT", "STDERR"],
        "SPARK_DRIVER": ["STDOUT", "STDERR"],
        "SPARK_EXECUTOR": ["STDERR", "STDOUT"]
      }
    }
  }'
```

Questa configurazione:
+ Crea registri in un gruppo `/my-company/emr/production` di log personalizzato.
+ Prefissa tutti i nomi dei flussi di log con. `cluster-prod`
+ Crittografa i log utilizzando la chiave KMS specificata.
+ Acquisisce tutti i tipi di registro: registri dei passaggi, registri dei driver Spark e registri degli esecutori Spark.

Per ulteriori informazioni sull'utilizzo di AWS CLI con Amazon EMR, consulta il [AWS CLI Command Reference for EMR](https://docs.aws.amazon.com/cli/latest/reference/emr/).

### Informazioni di riferimento sulla configurazione
<a name="emr-plan-logging-cw-configuration-reference"></a>

#### CloudWatchLogConfiguration Parametri
<a name="emr-plan-logging-cw-configuration-parameters"></a>

L'`CloudWatchLogConfigurationv`oggetto supporta i seguenti parametri:


**CloudWatchLogConfiguration Parametri**  

| Parametro | Tipo | Campo obbligatorio | Descrizione | 
| --- | --- | --- | --- | 
| Enabled | Booleano | Sì | Impostato su true per abilitare CloudWatch la registrazione. Imposta su per false disabilitare. | 
| LogGroupName | Stringa | No | Il nome del gruppo di CloudWatch log. Impostazione predefinita: /aws/emr/{cluster\_id} | 
| LogStreamNamePrefix | Stringa | No | Prefisso per i nomi dei flussi di registro. Predefinito: stringa vuota | 
| EncryptionKeyArn | Stringa | No | ARN della chiave KMS per la crittografia dei log. Se non specificato, i log vengono crittografati mediante CloudWatch crittografia lato server. | 
| LogTypes | Oggetto | No | Speciifica i tipi di registro da acquisire. Predefinito: STEP\_LOGS e SPARK\_DRIVER tipi con STDOUT e STDERR. | 

#### Tipi di log
<a name="emr-plan-logging-cw-configuration-log-types"></a>

Amazon EMR supporta tre tipi di log, ciascuno dei quali acquisisce sia flussi di output standard che flussi di errore standard:


**Tipi di log supportati**  

| Tipo di log | Description | Stream disponibili | 
| --- | --- | --- | 
| STEP\_LOGS | Registri di esecuzione delle fasi EMR, inclusi i registri dei controller di fase | STDOUT, STDERR | 
| SPARK\_DRIVER | Registri dei driver Apache Spark dalle applicazioni Spark | STDOUT, STDERR | 
| SPARK\_EXECUTOR | I log dell'esecutore Apache Spark dai nodi di lavoro | STDOUT, STDERR | 

##### Configurazione dei tipi di registro predefiniti
<a name="emr-plan-logging-cw-default-log-types"></a>

Quando non si specifica il `LogTypes` parametro, EMR utilizza la seguente configurazione predefinita:

```
"LogTypes": {
  "STEP_LOGS": ["STDOUT", "STDERR"],
  "SPARK_DRIVER": ["STDOUT", "STDERR"]
}
```

##### Configurazione dei tipi di registro personalizzati
<a name="emr-plan-logging-cw-default-log-types-configuration"></a>

È possibile personalizzare i tipi di registro da acquisire specificando esplicitamente il `LogTypes` parametro. Ad esempio, per acquisire solo i registri dei passaggi:

```
"LogTypes": {
  "STEP_LOGS": ["STDOUT", "STDERR"]
}
```

O per rilevare solo gli errori standard dei driver Spark:

```
"LogTypes": {
  "SPARK_DRIVER": ["STDERR"]
}
```

#### Denominazione dei gruppi di log e degli stream
<a name="emr-plan-logging-cw-log-group-and-stream-naming"></a>

CloudWatch organizza i log in gruppi di log e flussi di log:
+ **Gruppo di log:** una raccolta di flussi di log che condividono le stesse impostazioni di conservazione, monitoraggio e controllo degli accessi.
  + **Nome predefinito:** `/aws/emr/{cluster_id}`
  + **Nome personalizzato:** qualsiasi nome di gruppo di CloudWatch log valido specificato.
+ **Log Stream:** una sequenza di eventi di registro da un'unica fonte:
  + Schemi di denominazione:
    + **Registri dei passaggi:**. `{prefix}/steps/{step_id}/{file_name}`
    + **Registri dei driver e degli esecutori di Spark:** `{prefix}/applications/{application_id}/{container_id}/{file_name}`
  + Esempi:
    + `/steps/s-ABCDEFG123456/stdout`
    + `cluster-prod/steps/s-ABCDEFG123456/stderr`
    + `/applications/application_1234567890_0001/container_1234567890_0001_01_000001/stdout`

### Crittografia dei log con AWS KMS
<a name="emr-plan-logging-cw-encrypting-logs-with-kms"></a>

È possibile crittografare i CloudWatch registri inattivi utilizzando AWS Key Management Service (KMS). Per abilitare la crittografia:

1. Crea o identifica una chiave KMS nella stessa AWS regione del tuo cluster EMR.

1. Assicurati che la politica delle chiavi KMS consenta al servizio CloudWatch Logs di utilizzare la chiave.

1. Aggiungi il `EncryptionKeyArn` parametro al tuo. `CloudWatchLogConfiguration`

Per informazioni dettagliate sulla crittografia dei dati dei CloudWatch registri, consulta [Crittografare i dati di registro in CloudWatch Logs using](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html). AWS Key Management Service

#### Esempio con crittografia KMS
<a name="emr-plan-logging-cw-encrypting-logs-with-kms-example"></a>

```
{
  "CloudWatchLogConfiguration": {
    "Enabled": true,
    "EncryptionKeyArn": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
  }
}
```

### Visualizzazione dei log in CloudWatch
<a name="emr-plan-logging-cw-viewing-logs"></a>

Dopo l'esecuzione del cluster con CloudWatch la registrazione abilitata, puoi visualizzare e analizzare i log tramite la CloudWatch console o l'API.

#### Accesso ai log dalla console EMR
<a name="emr-plan-logging-cw-viewing-accessing"></a>

Il modo più veloce per accedere ai log del cluster è direttamente dalla console EMR:

1. Passa alla console Amazon EMR.

1. Seleziona il tuo cluster dall'elenco dei cluster.

1. Nella pagina dei dettagli del cluster, individua la sezione **Gestione del cluster**.

1. Fai clic sul CloudWatch link **Log destination in Amazon**.

Questo link ti porta direttamente alla console CloudWatch Logs filtrata in base al gruppo di log del tuo cluster.

#### Accesso ai log dalla console CloudWatch
<a name="emr-plan-logging-cw-viewing-accessing-console"></a>

Per accedere manualmente ai tuoi dati di accesso: CloudWatch

1. Apri la [CloudWatch console](https://console.aws.amazon.com/cloudwatch/).

1. Nel pannello di navigazione, selezionare **Log groups (Gruppi di log)**.

1. Trova il tuo gruppo di log (impostazione predefinita: `/aws/emr/{cluster_id}` o il nome del tuo gruppo di log personalizzato)

1. Scegli il gruppo di log per visualizzare i flussi di log disponibili.

1. Seleziona un flusso di log per visualizzarne gli eventi di log.

Per ulteriori informazioni sull'utilizzo dei CloudWatch log, consulta la [Amazon CloudWatch Logs User](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/) Guide.

### Considerazioni
<a name="emr-plan-logging-cw-considerations"></a>

#### CloudWatch Comportamento dell'agente
<a name="emr-plan-logging-cw-considerations-agent-behavior"></a>

Amazon CloudWatch Agent fornisce sia parametri che funzionalità di registrazione:
+ Abilitando l' CloudWatch agente da solo (senza`MonitoringConfiguration`) vengono pubblicati solo CloudWatch i parametri su. CloudWatch Non viene inviato alcun registro.
+ L'abilitazione CloudWatch della registrazione richiede sia l'applicazione CloudWatch Agent che il `MonitoringConfiguration` parametro con. `CloudWatchLogConfiguration` Ciò consente di unire metriche e registrazione.

#### Attivazione della sola CloudWatch registrazione (disabilitazione delle metriche) CloudWatch
<a name="emr-plan-logging-cw-considerations-disabling"></a>

Se si desidera abilitare la CloudWatch registrazione ma disabilitare la funzionalità di raccolta delle metriche, è possibile configurare l' CloudWatch agente in modo che interrompa l'esportazione delle metriche. Aggiungi la seguente classificazione alla configurazione del cluster:

```
[
  {
    "Classification": "emr-metrics",
    "Properties": {},
    "Configurations": [
      {
        "Classification": "emr-system-metrics",
        "Properties": {},
        "Configurations": []
      }
    ]
  }
]
```

Per ulteriori informazioni sui CloudWatch parametri, consulta [Monitora i parametri con Amazon](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/AmazonCloudWatchAgent-metrics.html). CloudWatch

#### Limiti noti
<a name="emr-plan-logging-cw-considerations-disabling-known"></a>

Punti dati delle metriche durante il caricamento dei log:  
Quando CloudWatch la registrazione è attiva, è possibile osservare occasionalmente delle lacune nei dati delle CloudWatch metriche durante i periodi di elevata attività dei log, in particolare durante l'invio dei passaggi. Ciò si verifica perché il controller di istanza EMR riavvia l' CloudWatch agente per applicare nuove configurazioni di registro quando vengono inviate le fasi, interrompendo temporaneamente la raccolta delle metriche. Ciò non influisce sulla consegna dei log o sulla funzionalità del cluster.

#### Requisiti della sottorete privata
<a name="emr-plan-logging-cw-considerations-disabling-known-private"></a>

Per pubblicare i log su CloudWatch Logs for un cluster EMR in una sottorete privata, create e associate l'endpoint Logs CloudWatch VPC al VPC del cluster.

*Per ulteriori informazioni sugli endpoint CloudWatch Logs, consulta gli [endpoint e le quote di Amazon CloudWatch Logs nella General Reference Guide](https://docs.aws.amazon.com/general/latest/gr/cwl_region.html).AWS *

#### Considerazioni sui costi
<a name="emr-plan-logging-cw-cost-considerations"></a>

CloudWatch I costi di Logs si basano su:
+ **Inserimento dei dati:** volume di dati di registro inseriti CloudWatch
+ **Archiviazione:** quantità di dati di registro archiviati, in base alle impostazioni di conservazione
+ **Analisi dei dati:** le query vengono eseguite utilizzando CloudWatch Logs Insights

Per ottimizzare i costi:
+ Imposta periodi di conservazione dei log appropriati per i tuoi gruppi di log.
+ Utilizza tipi di log selettivi per acquisire solo i log di cui hai bisogno.
+ Prendi in considerazione l'utilizzo del logging di Amazon S3 per lo storage di log a lungo termine a costi inferiori.

Per informazioni aggiornate sui prezzi, consulta la pagina [ CloudWatch dei prezzi di Amazon](https://aws.amazon.com/cloudwatch/pricing/).

### Risorse aggiuntive
<a name="emr-plan-logging-cw-additional-resources"></a>
+ [Monitora i parametri con Amazon CloudWatch](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/AmazonCloudWatchAgent-metrics.html) - Informazioni sulla raccolta dei CloudWatch parametri
+ [Configurazione dei ruoli IAM per Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-iam-roles.html) - Configurazione dei ruoli IAM per i cluster EMR
+ Guida per [l'utente CloudWatch di Amazon Logs - Guida](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/) completa alle funzionalità di Amazon CloudWatch Logs
+ [AWS CLI Riferimento ai comandi per EMR](https://docs.aws.amazon.com/cli/latest/reference/emr/) - Documentazione di riferimento CLI