Анализ журналов для Apache Kafka в HDInsight

Узнайте, как с помощью журналов Azure Monitor анализировать журналы, созданные в Apache Kafka в Azure HDInsight.

Примечание.

Сведения из данной статьи были недавно обновлены. Теперь вместо термина "Log Analytics" используется термин "журналы Azure Monitor". Данные журнала по-прежнему хранятся в рабочей области Log Analytics, собираются и анализируются той же службой Log Analytics. Целью обновления терминологии является лучшее отражение роли журналов в Azure Monitor. Дополнительные сведения см. в статье Изменения фирменной символики Azure Monitor.

Расположение журналов

Журналы Apache Kafka находятся в папке /var/log/kafka кластера. Журналы Kafka не сохраняются после завершения жизненного цикла кластера, даже если используются управляемые диски. В приведенной ниже таблице перечислены все доступные журналы.

Журнал Description
kafka.out Выходы stdout и stderr процесса Kafka. В этом файле находятся журналы запуска и завершения работы Kafka.
server.log Основной журнал сервера Kafka. Здесь находятся все журналы брокера Kafka.
controller.log Журналы контроллера, если брокер работает как контроллер.
statechange.log В этом файле сохраняются все события изменения состояния брокеров.
kafka-gc.log Статистика сбора мусора Kafka.

Включение журналов Azure Monitor для Apache Kafka

Инструкции по включению журналов Azure Monitor для HDInsight идентичны для всех кластеров HDInsight. Чтобы узнать, как создать и настроить необходимые службы, воспользуйтесь ссылками ниже.

  1. Создадите рабочую область Log Analytics. Дополнительные сведения см. в документе Журналы Azure Monitor.

  2. Создание Kafka в кластере HDInsight. Дополнительные сведения см. в документе Приступая к работе с Apache Kafka (предварительная версия) в HDInsight.

  3. Настройте для кластера Kafka использование журналов Azure Monitor. Дополнительные сведения см. в статье Мониторинг HDInsight с использованием журналов Azure Monitor.

Внимание

Данные журналов Azure Monitor станут доступны не сразу, иногда для их отображения требуется 20 минут.

Журналы запросов

  1. На портале Azure выберите рабочую область Log Analytics.

  2. В меню слева в разделе Общие выберите элемент Журналы. Здесь можно выполнять поиск данных, собранных из Kafka. Введите запрос в окне запроса и щелкните команду Выполнить. Ниже приведены некоторые примеры поисковых запросов:

  • Использование диска:

    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)
    
  • Загрузка ЦП:

    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)
    
  • Число входящих сообщений в секунду: (вместо 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)
    
  • Число входящих байтов в секунду: (вместо 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)
    
  • Число исходящих байтов в секунду: (вместо 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)
    

    Кроме того, вы можете ввести * для поиска всех типов данных журнала. В настоящее время для запросов доступны следующие журналы:

    Тип журнала Description
    log_kafkaserver_CL Брокер Kafka, server.log
    log_kafkacontroller_CL Брокер Kafka, controller.log
    metrics_kafka_CL Метрики Kafka JMX

    Apache kafka log analytics cpu usage.

Следующие шаги

Дополнительные сведения об Azure Monitor см. в статьях Общие сведения о службе Azure Monitor и Мониторинг кластеров HDInsight с помощью запросов к журналам Azure Monitor.

Дополнительные сведения о работе с Apache Kafka см. в следующих документах: