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à.
Registrazione di Amazon MSK
Puoi inviare i log del broker Apache Kafka a uno o più dei seguenti tipi di destinazione: Amazon Logs, Amazon S3 CloudWatch , Amazon Data Firehose. Puoi anche registrare le chiamate API Amazon MSK con AWS CloudTrail.
Nota
I log dei broker non sono disponibili sui broker Express.
Log di broker
I log di broker consentono di risolvere i problemi delle applicazioni Apache Kafka e di analizzare le comunicazioni con il cluster MSK. È possibile configurare il cluster MSK nuovo o esistente per fornire i log dei broker a livello Info a uno o più dei seguenti tipi di risorse di destinazione: un gruppo di CloudWatch log, un bucket S3, un flusso di distribuzione Firehose. Tramite Firehose è quindi possibile inviare i dati di registro dal flusso di distribuzione a OpenSearch Service.
È necessario creare una risorsa di destinazione prima di configurare il cluster per consegnargli i log del broker. Amazon MSK non crea queste risorse di destinazione se non esistono già. Per informazioni su questi tre tipi di risorse di destinazione e su come crearle, consultare la documentazione seguente:
Autorizzazioni richieste
Per configurare una destinazione per i log del broker Amazon MSK, l'identità IAM che utilizzi per le operazioni Amazon MSK deve disporre delle autorizzazioni descritte nella policy AWS politica gestita: Amazon MSKFull Access.
Per eseguire lo streaming dei log di broker a un bucket S3, è richiesta anche l'autorizzazione s3:PutBucketPolicy. Per informazioni sulle policy dei bucket S3, consulta la pagina How Do I Add an S3 Bucket Policy? nella Guida per l'utente di Amazon S3. Per informazioni sulle policy IAM in generale, consulta la pagina Access Management nella Guida per l'utente di IAM.
Policy della chiave KMS necessaria per l'utilizzo con i bucket SSE-KMS
Se hai abilitato la crittografia lato server per il tuo bucket S3 utilizzando chiavi AWS KMS gestite (SSE-KMS) con una chiave gestita dal cliente, aggiungi quanto segue alla policy chiave per la tua chiave KMS in modo che Amazon MSK possa scrivere i file del broker nel bucket.
{ "Sid": "Allow Amazon MSK to use the key.", "Effect": "Allow", "Principal": { "Service": [ "delivery.logs.amazonaws.com" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }
Configura i log del broker utilizzando AWS Management Console
Se stai creando un nuovo cluster, cerca l'intestazione Broker log delivery (Recapito del log del broker) nella sezione Monitoring (Monitoraggio) . Puoi specificare le destinazioni a cui Amazon MSK deve consegnare i log del broker.
Per un cluster esistente, scegli il cluster dall'elenco di cluster, quindi seleziona la scheda Proprietà. Scorri verso il basso fino alla sezione Consegna dei log e scegli il relativo pulsante Modifica. Puoi specificare le destinazioni a cui Amazon MSK deve consegnare i log del broker.
Configurare i log del broker utilizzando il AWS CLI
Quando utilizzi i comandi create-cluster o update-monitoring, puoi specificare facoltativamente il parametro logging-info e passarlo a una struttura JSON come nell'esempio seguente. In questo JSON, tutti e tre i tipi di destinazione sono facoltativi.
Nota
È necessario impostare il LogDeliveryEnabled tag true su Firehose Streams per configurare la consegna dei log. Il ruolo collegato al servizio che AWS crea per CloudWatch i log utilizza questo tag per concedere l'autorizzazione per tutti i flussi di distribuzione Firehose. Se rimuovi questo tag, il ruolo collegato al servizio non sarà in grado di inviare i log allo stream Firehose. Per vedere un esempio di policy IAM che mostra le autorizzazioni incluse nel ruolo collegato al servizio, consulta i ruoli IAM usati per le autorizzazioni delle risorse nella Amazon User Guide. CloudWatch
{ "BrokerLogs": { "S3": { "Bucket": "amzn-s3-demo-bucket", "Prefix": "ExamplePrefix", "Enabled": true }, "Firehose": { "DeliveryStream": "ExampleDeliveryStreamName", "Enabled": true }, "CloudWatchLogs": { "Enabled": true, "LogGroup": "ExampleLogGroupName" } } }
Configura i log del broker utilizzando l'API
È possibile specificare la loggingInfo struttura opzionale nel file JSON che si passa alle operazioni CreateClusteror UpdateMonitoring.
Nota
Per impostazione predefinita, quando la registrazione del broker è abilitata, Amazon MSK registra i log di livello INFO nelle destinazioni specificate. Tuttavia, gli utenti di Apache Kafka 2.4.X e versioni successive possono impostare dinamicamente il livello di log del broker su uno qualsiasi dei livelli di log log4jDEBUG oTRACE, ti consigliamo di utilizzare Amazon S3 o Firehose come destinazione del registro. Se utilizzi CloudWatch Logs come destinazione di log e abiliti DEBUG o TRACE livelli dinamicamente la registrazione, Amazon MSK può fornire continuamente un campione di log. Ciò può influire in modo significativo sulle prestazioni del broker e deve essere utilizzato solo quando il livello di log INFO non è sufficientemente dettagliato da consentire di determinare la causa principale di un problema.