Logboeken analyseren voor Apache Kafka in HDInsight

Meer informatie over het gebruik van Azure Monitor-logboeken voor het analyseren van logboeken die zijn gegenereerd door Apache Kafka in HDInsight.

Notitie

Dit artikel is onlangs bijgewerkt waarbij Log Analytics is vervangen door de term Azure Monitor-logboeken. Logboekgegevens worden nog steeds opgeslagen in een Log Analytics-werkruimte, en worden nog steeds verzameld en geanalyseerd met dezelfde Log Analytics-service. De terminologie wordt bijgewerkt om de rol van logboeken in Azure Monitor beter te weerspiegelen. Zie Wijzigingen in Azure Monitor-terminologie voor meer informatie.

Locatie van logboeken

Apache Kafka-logboeken in het cluster bevinden zich op /var/log/kafka. Kafka-logboeken worden niet opgeslagen of persistent in de levenscyclus van clusters, ongeacht of beheerde schijven worden gebruikt. In de volgende tabel ziet u de beschikbare logboeken.

Logboek Beschrijving
kafka.out stdout en stderr van het Kafka-proces. In dit bestand vindt u opstart- en afsluitlogboeken van Kafka.
server.log Het hoofdlogboek van de Kafka-server. Alle Kafka-brokerlogboeken komen hier terecht.
controller.log Controller registreert als de broker fungeert als controller.
statechange.log Alle statuswijzigingsgebeurtenissen voor brokers worden in dit bestand geregistreerd.
kafka-gc.log Statistieken van Kafka Garbagecollection.

Azure Monitor-logboeken inschakelen voor Apache Kafka

De stappen voor het inschakelen van Azure Monitor-logboeken voor HDInsight zijn hetzelfde voor alle HDInsight-clusters. Gebruik de volgende koppelingen om te begrijpen hoe u de vereiste services maakt en configureert:

  1. Maak een Log Analytics-werkruimte. Zie het document Logboeken in Azure Monitor voor meer informatie.

  2. Maak een Kafka-cluster in HDInsight. Zie het Document Beginnen met Apache Kafka in HDInsight voor meer informatie.

  3. Configureer het Kafka-cluster voor het gebruik van Azure Monitor-logboeken. Zie de Azure Monitor-logboeken gebruiken voor het bewaken van HDInsight-documenten voor meer informatie.

Belangrijk

Het kan ongeveer 20 minuten duren voordat gegevens beschikbaar zijn voor Azure Monitor-logboeken.

Querylogboeken

  1. Selecteer uw Log Analytics-werkruimte in Azure Portal.

  2. Selecteer Logboeken in het linkermenu onder Algemeen. Hier kunt u zoeken naar de gegevens die zijn verzameld uit Kafka. Voer een query in het queryvenster in en selecteer Vervolgens Uitvoeren. Hier volgen enkele voorbeelden van zoekopdrachten:

  • Schijfgebruik:

    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)
    
  • CPU-gebruik:

    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)
    
  • Inkomende berichten per seconde: (Vervang your_kafka_cluster_name door de clusternaam.)

    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)
    
  • Binnenkomende bytes per seconde: (Vervang door wn0-kafka de hostnaam van een werkknooppunt.)

    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)
    
  • Uitgaande bytes per seconde: (Vervang your_kafka_cluster_name door de clusternaam.)

    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)
    

    U kunt ook invoeren * om te zoeken in alle typen die zijn geregistreerd. Momenteel zijn de volgende logboeken beschikbaar voor query's:

    Logboektype Beschrijving
    log_kafkaserver_CL Kafka Broker-server.log
    log_kafkacontroller_CL Kafka-broker controller.log
    metrics_kafka_CL Metrische gegevens van Kafka JMX

    Apache kafka log analytics cpu usage.

Volgende stappen

Zie het overzicht van Azure Monitor en query's uitvoeren op Azure Monitor-logboeken om HDInsight-clusters te bewaken voor meer informatie over Azure Monitor.

Zie de volgende documenten voor meer informatie over het werken met Apache Kafka: