Analizzare i log per Apache Kafka in HDInsight
Informazioni su come usare i log di Monitoraggio di Azure per analizzare i log generati da Apache Kafka in HDInsight.
Nota
Questo articolo è stato aggiornato di recente in modo da usare il termine log di Monitoraggio di Azure anziché Log Analytics. I dati di log vengono comunque archiviati in un'area di lavoro Log Analytics e vengano ancora raccolti e analizzati dallo stesso servizio Log Analytics. Si sta procedendo a un aggiornamento della terminologia per riflettere meglio il ruolo dei log in Monitoraggio di Azure. Per informazioni dettagliate, vedere Modifiche della terminologia di Monitoraggio di Azure.
Posizione dei log
I log di Apache Kafka nel cluster si trovano in /var/log/kafka
. I log di Kafka non vengono salvati o persistono nei cicli di vita del cluster, indipendentemente dall'uso di dischi gestiti. Nella tabella seguente vengono illustrati i log disponibili.
Log | Descrizione |
---|---|
kafka.out | stdout e stderr del processo Kafka. I log di avvio e arresto di Kafka sono disponibili in questo file. |
server.log | Log principale del server Kafka. Tutti i log del broker Kafka finiscono qui. |
controller.log | Log del controller se il broker funge da controller. |
statechange.log | Tutti gli eventi di modifica dello stato per i broker vengono registrati in questo file. |
kafka-gc.log | Statistiche sulla Garbage Collection di Kafka. |
Abilitare i log di Monitoraggio di Azure per Apache Kafka
I passaggi per abilitare i log di Monitoraggio di Azure per HDInsight sono uguali per tutti i cluster HDInsight. Per informazioni su come creare e configurare i servizi richiesti, usare i collegamenti seguenti:
Creare un'area di lavoro Log Analytics. Per altre informazioni, vedere il documento Log in Monitoraggio di Azure.
Creare un cluster Kafka in HDInsight. Per altre informazioni, vedere il documento su come iniziare a usare Apache Kafka in HDInsight.
Configurare il cluster di Kafka per l'uso dei log di Monitoraggio di Azure. Per altre informazioni, vedere il documento Usare i log di Monitoraggio di Azure per monitorare HDInsight.
Importante
Potrebbero essere necessari circa 20 minuti prima che i dati siano disponibili per i log di Monitoraggio di Azure.
Log di query
Nel portale di Azure selezionare l'area di lavoro Log Analytics.
Nel menu a sinistra, in Generale, selezionare Log. Qui è possibile cercare i dati raccolti da Kafka. Immettere una query nell’intervallo di query e quindi selezionare Esegui. Di seguito alcuni esempi di ricerche:
Utilizzo del disco:
Perf | where ObjectName == "Logical Disk" and CounterName == "Free Megabytes" and InstanceName == "_Total" and ((Computer startswith_cs "hn" and Computer contains_cs "-") or (Computer startswith_cs "wn" and Computer contains_cs "-")) | summarize AggregatedValue = avg(CounterValue) by Computer, bin(TimeGenerated, 1h)
Utilizzo di CPU:
Perf | where CounterName == "% Processor Time" and InstanceName == "_Total" and ((Computer startswith_cs "hn" and Computer contains_cs "-") or (Computer startswith_cs "wn" and Computer contains_cs "-")) | summarize AggregatedValue = avg(CounterValue) by Computer, bin(TimeGenerated, 1h)
Messaggi in arrivo al secondo: (sostituire
your_kafka_cluster_name
con il nome del cluster).metrics_kafka_CL | where ClusterName_s == "your_kafka_cluster_name" and InstanceName_s == "kafka-BrokerTopicMetrics-MessagesInPerSec-Count" | summarize AggregatedValue = avg(kafka_BrokerTopicMetrics_MessagesInPerSec_Count_value_d) by HostName_s, bin(TimeGenerated, 1h)
Byte in ingresso al secondo: (sostituire
wn0-kafka
con un nome host del nodo di lavoro).metrics_kafka_CL | where HostName_s == "wn0-kafka" and InstanceName_s == "kafka-BrokerTopicMetrics-BytesInPerSec-Count" | summarize AggregatedValue = avg(kafka_BrokerTopicMetrics_BytesInPerSec_Count_value_d) by bin(TimeGenerated, 1h)
Byte in uscita al secondo: (sostituire
your_kafka_cluster_name
con il nome del cluster).metrics_kafka_CL | where ClusterName_s == "your_kafka_cluster_name" and InstanceName_s == "kafka-BrokerTopicMetrics-BytesOutPerSec-Count" | summarize AggregatedValue = avg(kafka_BrokerTopicMetrics_BytesOutPerSec_Count_value_d) by bin(TimeGenerated, 1h)
È anche possibile immettere
*
per cercare tutti i tipi registrati. Per un elenco dei log disponibili per le query, vedere Carico di lavoro di Kafka.
Passaggi successivi
Per altre informazioni su Monitoraggio di Azure, vedere Panoramica di Monitoraggio di Azure e Eseguire query sui log di Monitoraggio di Azure per monitorare i cluster HDInsight.
Per altre informazioni sull'uso di Apache Kafka, vedere i documenti seguenti: