春季启动卡夫卡健康检查不起作用

时间:2021-07-27 13:49:17

标签: java spring spring-boot apache-kafka

我正在开发一个使用 Kafka 消息的 Spring Boot 应用程序。 我使用 @KafkaListener... 完美地消耗了我的 Kafka 事件,现在我想使用 spring 执行器实现 Kafka 健康检查。 我用了这个例子:https://medium.com/dna-technology/kafka-consumers-health-check-in-spring-boot-actuator-d00f9017e89d 但它不起作用,我找不到两个类的导入 HealthRow All Status

private final KafkaListenerEndpointRegistry kafkaListenerEndpointRegistry;

@Override
protected void doHealthCheck(Builder builder) {
  Map<String, HealthRow> consumersHealth = new TreeMap<>(Comparator.naturalOrder());
  final AllStatus allStatus = new AllStatus();
  final Collection<MessageListenerContainer> allListenerContainers = kafkaListenerEndpointRegistry
      .getAllListenerContainers();

  for (MessageListenerContainer messageListenerContainer : allListenerContainers) {
    ConsumerDetails consumerDetails = buildConsumerDetails(messageListenerContainer);
    consumersHealth.put(consumerDetails.getName(), consumerDetails);
    updateAllStatus(allStatus, consumerDetails);
  }

  consumersHealth.put(allStatus.getName(), allStatus);

  builder.withDetails(consumersHealth);
  builder.status(allStatus.getStatus());
}

有谁知道如何使用spring boot正确实现Kafka健康检查吗? 问候。

0 个答案:

没有答案
相关问题