Диагностическая карта для Kafka-клиента, который подключается к Azure Event Hubs, но получает partition count 0: как разделить имя ресурса, авторизацию, получение метаданных и конфигурацию обновления.
Сначала подтвердите объект запроса
Зафиксируйте имя namespace, имя Event Hub и полное имя bootstrap endpoint без ключей и параметров авторизации. В Kafka-интерфейсе Azure имя темы соответствует имени Event Hub, поэтому опечатка, обращение к другому namespace или подстановка consumer group вместо темы меняют смысл запроса. Сверьте ресурс в портале и выполните один запрос метаданных тем же клиентом. Не создавайте новый Event Hub ради проверки: сначала нужно понять, к какому объекту действительно обращается приложение.
Разделите соединение и авторизацию
Факт открытия TCP-соединения или TLS-сессии не означает, что Kafka-клиент авторизован получать метаданные. Проверьте, что клиент использует поддерживаемый SASL-механизм и ожидаемый режим TLS, а учётные данные относятся к нужному namespace. В журнале клиента сохраните класс ошибки и этап до первого запроса метаданных, но удалите строку подключения, пароль SASL и токены. Если есть явная ошибка аутентификации, разбирать количество разделов рано: ноль может быть следствием недоступных метаданных, а не состояния Event Hub.
Посмотрите на жизненный цикл метаданных
Официальная конфигурация Event Hubs для Kafka описывает периодическое обновление метаданных и рекомендуемые параметры клиента. Сравните время запуска, момент первого успешного запроса и значение metadata.max.age.ms. Если клиент долго живёт с устаревшим снимком, выполните контролируемый перезапуск одного экземпляра и сравните результат. Не снижайте интервалы до минимальных значений на всём парке: это увеличивает частоту запросов и не исправляет неверное имя ресурса или отказ в доступе.
Сопоставьте данные портала и ответ клиента
В портале Azure запишите фактическое количество разделов Event Hub и время проверки, затем получите список тем и описание нужной темы через стандартный административный вызов выбранной библиотеки. Если портал показывает разделы, а клиент возвращает пустой ответ, сохраните версии библиотеки и runtime, DNS-имя endpoint и категорию ответа брокера. Если оба источника показывают ожидаемое число, проблема уже не в метаданных: переходите к назначению разделов конкретной consumer group и обработке событий.
Подготовьте воспроизводимый пакет
Для поддержки достаточно региона и типа namespace, имени Event Hub в обезличенном виде, числа разделов по порталу, версии Kafka-клиента, времени запроса, SASL-механизма без секрета, результата списка тем и описания темы, а также корреляционного идентификатора ошибки, если он есть. Добавьте, меняется ли результат после перезапуска одного клиента и на другой consumer group. Не прикладывайте shared access key, connection string, JWT, приватный DNS-адрес или полный журнал окружения.
Материал подготовлен самостоятельно с автоматизацией и редакционно проверен 29 июля 2026 года по обезличенному сигналу Microsoft Q&A и официальной документации Azure; строки подключения, токены и сведения об участниках не воспроизводились.
Источники и проверка
- Microsoft Learn — устранение проблем Kafka в Azure Event Hubs проверено 2026-07-29
- Microsoft Learn — конфигурации Kafka для Azure Event Hubs проверено 2026-07-29
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.