Analýza protokolů pro Apache Kafka ve službě HDInsight

Naučte se používat protokoly Azure Monitoru k analýze protokolů generovaných Apache Kafka ve službě HDInsight.

Poznámka:

Tento článek byl nedávno aktualizován tak, aby místo Log Analytics používal termín protokoly služby Azure Monitor. Data protokolů jsou stále uložená v pracovním prostoru služby Log Analytics a stále se shromažďují a analyzují stejnou službou Log Analytics. Aktualizujeme terminologii tak, aby lépe odrážela roli protokolů ve službě Azure Monitor. Podrobnosti najdete v tématu Změny terminologie služby Azure Monitor.

Umístění protokolů

Protokoly Apache Kafka v clusteru jsou umístěné na /var/log/kafkaadrese . Protokoly Kafka se neukládají ani neukládají napříč životními cykly clusteru bez ohledu na to, jestli se používají spravované disky. V následující tabulce jsou uvedené dostupné protokoly.

Protokol Popis
kafka.out stdout a stderr procesu Kafka. Protokoly spuštění a vypnutí Kafka najdete v tomto souboru.
server.log Hlavní protokol serveru Kafka. Všechny protokoly zprostředkovatele Kafka končí tady.
controller.log Kontroler protokoluje, pokud zprostředkovatel funguje jako kontroler.
statechange.log Všechny události změn stavu na zprostředkovatele jsou do tohoto souboru zaprotokolovány.
kafka-gc.log Statistiky uvolňování paměti Kafka

Povolení protokolů azure Monitoru pro Apache Kafka

Postup povolení protokolů služby Azure Monitor pro HDInsight je stejný pro všechny clustery HDInsight. Následující odkazy vám porozumí, jak vytvořit a nakonfigurovat požadované služby:

  1. Vytvoříte pracovní prostor služby Log Analytics Další informace najdete v dokumentu Protokoly ve službě Azure Monitor .

  2. Vytvořte kafka v clusteru HDInsight. Další informace najdete v dokumentu Začínáme s Apache Kafka ve službě HDInsight .

  3. Nakonfigurujte cluster Kafka tak, aby používal protokoly služby Azure Monitor. Další informace najdete v tématu Použití protokolů služby Azure Monitor k monitorování dokumentu HDInsight .

Důležité

Než budou data dostupná pro protokoly služby Azure Monitor, může to trvat přibližně 20 minut.

Dotazování protokolů

  1. Na webu Azure Portal vyberte pracovní prostor služby Log Analytics.

  2. V nabídce vlevo v části Obecné vyberte Protokoly. Tady můžete prohledávat data shromážděná ze systému Kafka. Do okna dotazu zadejte dotaz a pak vyberte Spustit. Tady je několik příkladů hledání:

  • Využití disku:

    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)
    
  • Využití procesoru:

    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)
    
  • Příchozí zprávy za sekundu: (Nahraďte your_kafka_cluster_name názvem clusteru.)

    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)
    
  • Příchozí bajty za sekundu: (Nahraďte wn0-kafka názvem hostitele pracovního uzlu.)

    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)
    
  • Odchozí bajty za sekundu: (Nahraďte your_kafka_cluster_name názvem clusteru.)

    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)
    

    Můžete také zadat * hledání všech zaprotokolovaných typů. V současné době jsou pro dotazy k dispozici následující protokoly:

    Typ protokolu Popis
    log_kafkaserver_CL Server.log zprostředkovatele Kafka
    log_kafkacontroller_CL Controller.log zprostředkovatele Kafka
    metrics_kafka_CL Metriky Kafka JMX

    Apache kafka log analytics cpu usage.

Další kroky

Další informace o službě Azure Monitor najdete v přehledu služby Azure Monitor a dotazování protokolů služby Azure Monitor pro monitorování clusterů HDInsight.

Další informace o práci s Apache Kafka najdete v následujících dokumentech: