Aracılığıyla paylaş


HDInsight üzerinde Apache Kafka için günlükleri çözümleme

HDInsight üzerinde Apache Kafka tarafından oluşturulan günlükleri analiz etmek için Azure İzleyici günlüklerini kullanmayı öğrenin.

Not

Bu makale kısa süre önce Log Analytics yerine Azure İzleyici günlükleri terimini kullanacak şekilde güncelleştirildi. Günlük verileri hala bir Log Analytics çalışma alanında depolanır ve yine de aynı Log Analytics hizmeti tarafından toplanır ve analiz edilir. Azure İzleyici'deki günlüklerin rolünü daha iyi yansıtacak şekilde terminolojiyi güncelleştiriyoruz. Ayrıntılar için bkz . Azure İzleyici terminolojisi değişiklikleri .

Günlüklerin konumu

Kümedeki Apache Kafka günlükleri konumunda /var/log/kafkabulunur. Kafka günlükleri, yönetilen diskler kullanılıp kullanılmadığını fark etmeksizin küme yaşam döngüleri arasında kaydedilmez veya kalıcı hale gelmez. Aşağıdaki tabloda kullanılabilir günlükler gösterilmektedir.

Günlük Açıklama
kafka.out stdout ve Kafka işleminin stderr'ı. Kafka başlatma ve kapatma günlüklerini bu dosyada bulabilirsiniz.
server.log Ana Kafka sunucu günlüğü. Tüm Kafka aracı günlükleri burada sona erer.
controller.log Aracı denetleyici olarak davranıyorsa denetleyici günlüğe kaydeder.
statechange.log Aracılara yapılan tüm durum değişikliği olayları bu dosyaya kaydedilir.
kafka-gc.log Kafka Çöp Toplama istatistikleri.

Apache Kafka için Azure İzleyici günlüklerini etkinleştirme

HDInsight için Azure İzleyici günlüklerini etkinleştirme adımları tüm HDInsight kümeleri için aynıdır. Gerekli hizmetleri oluşturmayı ve yapılandırmayı anlamak için aşağıdaki bağlantıları kullanın:

  1. Log Analytics çalışma alanı oluşturma. Daha fazla bilgi için Azure İzleyici'deki Günlükler belgesine bakın.

  2. HDInsight kümesinde Kafka oluşturun. Daha fazla bilgi için HDInsight üzerinde Apache Kafka ile başlama belgesine bakın.

  3. Kafka kümesini Azure İzleyici günlüklerini kullanacak şekilde yapılandırın. Daha fazla bilgi için HDInsight'ı izlemek için Azure İzleyici günlüklerini kullanma belgesine bakın.

Önemli

Verilerin Azure İzleyici günlükleri için kullanılabilir olması yaklaşık 20 dakika sürebilir.

Sorgu günlükleri

  1. Azure portalından Log Analytics çalışma alanınızı seçin.

  2. Soldaki menüden Genel'in altında Günlükler'i seçin. Buradan Kafka'dan toplanan verileri arayabilirsiniz. Sorgu penceresine bir sorgu girin ve Çalıştır'ı seçin. Aşağıda bazı örnek aramalar verilmişti:

  • Disk kullanımı:

    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 kullanımı:

    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)
    
  • Saniye başına gelen iletiler: (Değerini kümenizin adıyla değiştirin your_kafka_cluster_name .)

    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)
    
  • Saniye başına gelen bayt sayısı: (Öğesini bir çalışan düğümü ana bilgisayar adıyla değiştirin wn0-kafka .)

    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)
    
  • Saniye başına giden bayt sayısı: (Değerini kümenizin adıyla değiştirin your_kafka_cluster_name .)

    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)
    

    Günlüğe kaydedilen tüm türlerde arama yapmak için de girebilirsiniz * . Şu anda sorgular için aşağıdaki günlükler kullanılabilir:

    Günlükleri türü Açıklama
    log_kafkaserver_CL Kafka aracısı server.log
    log_kafkacontroller_CL Kafka aracısı controller.log
    metrics_kafka_CL Kafka JMX ölçümleri

    Apache kafka log analytics cpu kullanımı.

Sonraki adımlar

Azure İzleyici hakkında daha fazla bilgi için bkz . Azure İzleyici'ye genel bakış ve HDInsight kümelerini izlemek için Azure İzleyici günlüklerini sorgulama.

Apache Kafka ile çalışma hakkında daha fazla bilgi için aşağıdaki belgelere bakın: