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à.
Archiviazione dei log
Per monitorare l'avanzamento del lavoro su EMR Serverless e risolvere i problemi relativi ai processi, è possibile scegliere in che modo EMR Serverless archivia e pubblica i log delle applicazioni. Quando invii un job run, puoi specificare storage gestito, Amazon S3 e Amazon CloudWatch come opzioni di registrazione.
Con CloudWatch, puoi specificare i tipi e le posizioni di registro che desideri utilizzare o accettare i tipi e le posizioni predefiniti. Per ulteriori informazioni sui CloudWatch log, vedereRegistrazione per sistemi EMR Serverless con Amazon CloudWatch. Per quanto riguarda lo storage gestito e la registrazione S3, la tabella seguente mostra le posizioni dei log e la disponibilità dell'interfaccia utente che puoi aspettarti se scegli lo storage gestito, i bucket Amazon S3 o entrambi.
Opzione | Registri degli eventi | Registri di container | Interfaccia utente dell'applicazione |
---|---|---|---|
Archiviazione gestita |
Archiviata in uno storage gestito |
Archiviata in un sistema di storage gestito |
Supportato |
Storage gestito e bucket S3 |
Archiviati in entrambi i posti |
Memorizzato in un bucket S3 |
Supportato |
Bucket Amazon S3 |
Memorizzato nel bucket S3 |
Memorizzato nel bucket S3 |
Non supportato 1 |
1 Si consiglia di mantenere selezionata l'opzione di archiviazione gestita. In caso contrario, non è possibile utilizzare l'applicazione integrataUIs.
Registrazione per EMR Serverless con storage gestito
Per impostazione predefinita, EMR Serverless archivia i log delle applicazioni in modo sicuro nello storage EMR gestito di Amazon per un massimo di 30 giorni.
Nota
Se disattivi l'opzione predefinita, Amazon non EMR può risolvere i tuoi lavori per tuo conto.
Per disattivare questa opzione da EMR Studio, deseleziona la casella di controllo Consenti di AWS conservare i log per 30 giorni nella sezione Impostazioni aggiuntive della pagina Invia lavoro.
Per disattivare questa opzione da AWS CLI, utilizzate la managedPersistenceMonitoringConfiguration
configurazione quando inviate l'esecuzione di un lavoro.
{ "monitoringConfiguration": { "managedPersistenceMonitoringConfiguration": { "enabled": false } } }
Registrazione per EMR Serverless con bucket Amazon S3
Prima che i tuoi lavori possano inviare dati di log ad Amazon S3, devi includere le seguenti autorizzazioni nella politica di autorizzazione per il ruolo di esecuzione del lavoro. Sostituisci
con il nome del bucket di accesso.amzn-s3-demo-logging-bucket
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-logging-bucket
/*" ] } ] }
Per configurare un bucket Amazon S3 in cui archiviare i log di AWS CLI, utilizza la s3MonitoringConfiguration
configurazione all'avvio di un job. A tale scopo, fornisci quanto segue --configuration-overrides
nella configurazione.
{ "monitoringConfiguration": { "s3MonitoringConfiguration": { "logUri": "s3://
amzn-s3-demo-logging-bucket
/logs/" } } }
Per i processi batch che non hanno i nuovi tentativi abilitati, EMR Serverless invia i log al seguente percorso:
'/applications/<applicationId>/jobs/<jobId>'
EMRLe versioni Serverless 7.1.0 e successive supportano i tentativi di ripetizione per processi di streaming e processi in batch. Se si esegue un processo con i tentativi abilitati, EMR Serverless aggiunge automaticamente un numero di tentativo al prefisso del percorso di registro, in modo da poter distinguere e tenere traccia meglio dei log.
'/applications/<applicationId>/jobs/<jobId>/attempts/<attemptNumber>/'
Registrazione per sistemi EMR Serverless con Amazon CloudWatch
Quando invii un lavoro a un'applicazione EMR Serverless, puoi scegliere Amazon CloudWatch come opzione per archiviare i log delle tue applicazioni. Ciò consente di utilizzare funzionalità di analisi dei CloudWatch log come CloudWatch Logs Insights e Live Tail. Puoi anche trasmettere i log da altri sistemi, CloudWatch ad esempio OpenSearch per ulteriori analisi.
EMRServerless fornisce la registrazione in tempo reale dei registri dei driver. È possibile visualizzare i log in tempo reale con la funzionalità CloudWatch live tail o tramite i comandi tail. CloudWatch CLI
Per impostazione predefinita, la CloudWatch registrazione è disabilitata per EMR Serverless. Per abilitarlo, consulta la configurazione in. AWS CLI
Nota
Amazon CloudWatch pubblica i log in tempo reale, in modo da assorbire più risorse dai lavoratori. Se scegli una capacità di manodopera ridotta, l'impatto sulla durata del lavoro potrebbe aumentare. Se abiliti CloudWatch la registrazione, ti consigliamo di scegliere una maggiore capacità di lavoro. È anche possibile che la pubblicazione dei log rallenti se la frequenza delle transazioni al secondo (TPS) è troppo bassa per. PutLogEvents
La configurazione di CloudWatch limitazione è globale per tutti i servizi, incluso Serverless. EMR Per ulteriori informazioni, vedi Come posso determinare la limitazione
Autorizzazioni richieste per la registrazione con CloudWatch
Prima che i tuoi lavori possano inviare dati di log ad Amazon CloudWatch, devi includere le seguenti autorizzazioni nella politica di autorizzazione per il ruolo Job Runtime.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:DescribeLogGroups" ], "Resource": [ "arn:aws:logs:
Regione AWS
:111122223333
:*" ] }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogStreams" ], "Resource": [ "arn:aws:logs:Regione AWS
:111122223333
:log-group:my-log-group-name
:*" ] } ] }
AWS CLI
Per configurare Amazon per CloudWatch archiviare i log per EMR Serverless da AWS CLI, usa la cloudWatchLoggingConfiguration
configurazione quando avvii un job run. A tale scopo, fornisci le seguenti modifiche di configurazione. Facoltativamente, puoi anche fornire il nome del gruppo di log, il nome del prefisso del flusso di log, i tipi di registro e una chiave di crittografia. ARN
Se non specifichi i valori opzionali, CloudWatch pubblica i log in un gruppo di log predefinito/aws/emr-serverless
, con il flusso di log predefinito. /applications/
applicationId
/jobs/jobId
/worker-type
EMRLe versioni serverless 7.1.0 e successive supportano i tentativi di ripetizione per processi di streaming e processi in batch. Se hai abilitato nuovi tentativi per un processo, EMR Serverless aggiunge automaticamente un numero di tentativo al prefisso del percorso di registro, in modo da poter distinguere e tracciare meglio i log.
'/applications/
<applicationId>
/jobs/<jobId>
/attempts/<attemptNumber>
/worker-type'
Di seguito viene mostrata la configurazione minima richiesta per attivare Amazon CloudWatch Logging con le impostazioni predefinite per EMR Serverless:
{ "monitoringConfiguration": { "cloudWatchLoggingConfiguration": { "enabled": true } } }
L'esempio seguente mostra tutte le configurazioni obbligatorie e opzionali che puoi specificare quando attivi Amazon CloudWatch Logging for EMR Serverless. I logTypes
valori supportati sono elencati anche sotto questo esempio.
{ "monitoringConfiguration": { "cloudWatchLoggingConfiguration": { "enabled": true, // Required "logGroupName": "Example_logGroup", // Optional "logStreamNamePrefix": "Example_logStream", // Optional "encryptionKeyArn": "key-arn", // Optional "logTypes": { "SPARK_DRIVER": ["stdout", "stderr"] //List of values } } } }
Per impostazione predefinita, EMR Serverless pubblica solo i log dei driver su cui stdout e stderr. CloudWatch Se desideri altri log, puoi specificare un ruolo del contenitore e i tipi di log corrispondenti con il campo. logTypes
L'elenco seguente mostra i tipi di worker supportati che è possibile specificare per la logTypes
configurazione:
- Spark
-
-
SPARK_DRIVER : ["STDERR", "STDOUT"]
-
SPARK_EXECUTOR : ["STDERR", "STDOUT"]
-
- Hive
-
-
HIVE_DRIVER : ["STDERR", "STDOUT", "HIVE_LOG", "TEZ_AM"]
-
TEZ_TASK : ["STDERR", "STDOUT", "SYSTEM_LOGS"]
-