Usa il driver di registro awslogs - AWS Batch

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à.

Usa il driver di registro awslogs

Per impostazione predefinita, AWS Batch consente al driver di awslogs registro di inviare informazioni di registro a Logs. CloudWatch È possibile utilizzare questa funzionalità per visualizzare diversi registri dei contenitori in un'unica comoda posizione ed evitare che i registri dei contenitori occupino spazio su disco sulle istanze del contenitore. Questo argomento consente di configurare il driver di awslogs registro nelle definizioni dei processi.

Nota

Nella AWS Batch console, è possibile configurare il driver di awslogs registro nella sezione Configurazione della registrazione quando si crea una definizione di processo.

Nota

Il tipo di informazioni registrate dai contenitori del processo dipende principalmente dal loro ENTRYPOINT comando. Per impostazione predefinita, i log acquisiti mostrano l'output del comando che normalmente si vede in un terminale interattivo se il contenitore viene eseguito localmente, ovvero i STDOUT flussi di STDERR I/O. Il driver di awslogs registro passa semplicemente questi log da Docker a Logs. CloudWatch Per ulteriori informazioni su come vengono elaborati i log Docker, inclusi metodi alternativi per acquisire diversi flussi o dati di file, consulta l'articolo relativo alla visualizzazione di log per un container o servizio nella documentazione di Docker.

Per inviare i log di sistema dalle istanze del contenitore a Logs, vedi. CloudWatch Utilizzo dei CloudWatch registri con AWS Batch Per ulteriori informazioni sui CloudWatch log, consulta Monitoring Log Files e CloudWatch Logs quote nella Amazon CloudWatch Logs User Guide.

awslogs registra le opzioni del driver nel tipo di dati AWS Batch JobDefiniton

Il driver di awslogs registro supporta le seguenti opzioni nelle AWS Batch definizioni dei processi. Per ulteriori informazioni, consulta CloudWatch Logs logging driver nella documentazione Docker.

awslogs-region

Campo obbligatorio: no

Specificate la regione in cui il driver di awslogs registro deve inviare i log Docker. Per impostazione predefinita, la regione utilizzata è la stessa di quella per il lavoro. Puoi scegliere di inviare tutti i log dei lavori in diverse regioni a una singola regione in CloudWatch Logs. In questo modo, saranno visibili tutti da un'unica posizione. In alternativa, puoi separarli per regione per un approccio più granulare. Tuttavia, quando scegliete questa opzione, assicuratevi che i gruppi di log specificati esistano nella regione specificata.

awslogs-group

Obbligatorio: facoltativo

Con l'awslogs-groupopzione, è possibile specificare il gruppo di log a cui il driver di awslogs log invia i propri flussi di log. Se questo non è specificato, aws/batch/job viene utilizzato.

awslogs-stream-prefix

Obbligatorio: facoltativo

Con l'awslogs-stream-prefixopzione, puoi associare un flusso di log al prefisso specificato e all'ID ECS attività Amazon del AWS Batch lavoro a cui appartiene il contenitore. Se specifichi un prefisso con questa opzione, il flusso di log assume il formato seguente:

prefix-name/default/ecs-task-id
awslogs-datetime-format

Campo obbligatorio: no

Questa opzione definisce un modello di inizio multilinea nel formato strftime Python. Un messaggio di log è composto da una riga che corrisponde allo schema e da tutte le righe successive che non corrispondono allo schema. In questo modo la riga associata è il delimitatore tra i messaggi di log.

Un esempio di un caso d'uso per l'utilizzo di questo formato è per l'analisi di output, ad esempio uno dump dello stack, che potrebbe altrimenti essere registrato in più voci. Il modello corretto consente di acquisirlo in una sola voce.

Per ulteriori informazioni, vedere awslogs-datetime-format.

Questa opzione è sempre prioritaria nel caso in cui siano configurati sia awslogs-datetime-format che awslogs-multiline-pattern.

Nota

Il logging multilinea esegue un'espressione regolare per l'analisi e il confronto di tutti i messaggi di log. L'operazione potrebbe avere ripercussioni negative sulle prestazioni del logging.

awslogs-multiline-pattern

Campo obbligatorio: no

Questa opzione definisce un modello di inizio multilinea utilizzando un'espressione regolare. Un messaggio di registro è costituito da una riga che corrisponde allo schema e da tutte le righe successive che non corrispondono allo schema. Pertanto, la riga corrispondente è il delimitatore tra i messaggi di registro.

Per ulteriori informazioni, consulta la documentazione di awslogs-multiline-patternDocker.

Questa opzione viene ignorata se anche awslogs-datetime-format è configurato.

Nota

Il logging multilinea esegue un'espressione regolare per l'analisi e il confronto di tutti i messaggi di log. L'operazione potrebbe avere ripercussioni negative sulle prestazioni del logging.

awslogs-create-group

Campo obbligatorio: no

Specifica se desideri che il gruppo di log venga creato automaticamente. Se questa opzione non è specificata, viene impostata in modo predefinito su false.

avvertimento

Questa opzione non è consigliata. Si consiglia di creare il gruppo di log in anticipo utilizzando l'CreateLogGroupAPIazione CloudWatch Registri ogni volta che ogni job tenta di creare il gruppo di log, aumentando la probabilità che il processo non riesca.

Nota

La IAM politica per il ruolo di esecuzione deve includere l'logs:CreateLogGroupautorizzazione prima di tentare l'utilizzoawslogs-create-group.

Specificate una configurazione di registro nella definizione del lavoro

Per impostazione predefinita, AWS Batch abilita il driver di awslogs registro. Questa sezione descrive come personalizzare la configurazione del awslogs registro per un lavoro. Per ulteriori informazioni, consulta Creare una definizione di processo a nodo singolo .

I seguenti JSON frammenti di configurazione del registro hanno un logConfiguration oggetto specificato per ogni processo. Uno è per un WordPress processo che invia i log a un gruppo di log chiamato awslogs-wordpress e un altro è per un SQL contenitore My che invia i log a un gruppo di log chiamato. awslogs-mysql Entrambi i container utilizzano il prefisso awslogs-example per il flusso di log.

"logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-group": "awslogs-wordpress", "awslogs-stream-prefix": "awslogs-example" } }
"logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-group": "awslogs-mysql", "awslogs-stream-prefix": "awslogs-example" } }

Nella AWS Batch console, la configurazione del registro per la definizione del wordpress processo viene specificata come mostrato nell'immagine seguente.

Log configuration interface showing awslogs driver with group and stream prefix options.

Dopo aver registrato una definizione di attività con il driver di awslogs registro in una configurazione del registro delle definizioni del processo, è possibile inviare un lavoro con tale definizione di processo per iniziare a inviare i log ai CloudWatch registri. Per ulteriori informazioni, consulta Tutorial: invia un lavoro.