#spring-boot #apache-kafka #spring-kafka #spring-micrometer
Вопрос:
мы создаем систему мониторинга для нашего приложения Spring Boot с использованием micrometer
. Собранные показатели публикуются в экземпляре Elasticsearch через micrometer-registry-elastic
. Все в порядке, за исключением:
kafka_consumer_fetch_manager_records_lag
всегда равно 0, даже если я уверен, что в группе потребителей есть отставаниеkafka_consumer_fetch_manager_records_lag_avg
всегда равно 0, даже если я уверен, что в группе потребителей есть отставаниеkafka_consumer_fetch_manager_records_lag_max
имеет значение, отличное от 0 только при первом измерении.
Все остальные показатели, такие как kafka_consumer_fetch_manager_records_lead
правильно заданы.
Задействованные версии:
spring-boot:2.5.4
micrometer:1.7.3
micrometer-registry-elastic:1.7.3
spring-kafka:2.7.6
kafka-clients:2.7.1
Kafka broker: 2.7.0
Я отладил всю установку, и нет никаких признаков ошибки, MicrometerConsumerListener
все правильно создано, даже KafkaClientMetrics
и все Sensor
экземпляры. Я понятия не имею, в чем проблема, у нас нет никаких особых настроек и сообщений об ошибках в журнале. Похоже, что для приведенных выше показателей нет образцов со значением, отличным от 0, но я почти уверен, что у брокера есть задержка, потому что я проверил это с помощью инструмента командной строки непосредственно на брокере.
Есть какие-нибудь мысли? Большое спасибо
Комментарии:
1. Поступают ли сообщения в темы? Также можете ли вы предоставить какой-либо код или конфигурации?
2. Как было сказано выше,
consumer lag
растет в брокере. Это означает, что сообщение поступает по теме. Такжеkafka_consumer_fetch_manager_records_lead
больше 0, что означает, что потребители обрабатывают записи. К сожалению, я думаю, что ни один код или конфигурация не могут быть полезны без надлежащей подсказки при запуске о том, что нужно предоставить 🙂 кстати, все автоматически настраивается с помощью Spring Boot3. Похоже на
kafka-clients
проблему — я тоже вижу ее как 0.0 в VisualVM (плагин MBean).4. @GaryRussell спасибо. Могу ли я подать запрос в apache-kafka для дальнейшего расследования? Неужели это cwiki.apache.org/confluence/display/KAFKA/… правильный канал?
5. Вам не нужно спрашивать моего разрешения; я не участвую в разработке Кафки.