Spring Boot 3.1.1中Kafka Producer指标未在Prometheus显示的问题
解决Spring Boot 3.1.1中KafkaTemplate的Prometheus详细指标缺失问题
你遇到的问题核心是:当前通过MicrometerProducerListener获取的只是Spring Kafka层面的基础发送指标,而kafka_producer_request_latency_avg、kafka_producer_record_retry_total这类指标是Kafka客户端原生通过Micrometer暴露的指标,需要单独配置开启,和是否使用Reactive模板无关。
下面是具体的解决步骤:
1. 引入Micrometer-Kafka集成依赖
首先确保项目中包含micrometer-kafka依赖,这个包提供了Kafka客户端和Micrometer的桥接:
<!-- Maven --> <dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-kafka</artifactId> <version>1.11.0</version> <!-- 版本需与Spring Boot 3.1.1对应的Micrometer版本匹配(1.11.x) --> </dependency>
// Gradle implementation 'io.micrometer:micrometer-kafka:1.11.0'
2. 配置Kafka客户端启用Micrometer指标
有两种方式开启Kafka客户端的指标上报:
方式一:在代码中配置Producer属性
修改你创建DefaultKafkaProducerFactory的代码,添加Kafka客户端的指标上报配置:
@Autowired private MeterRegistry meterRegistry; @Bean public KafkaTemplate<String, StatusEvent> statusEventKafkaTemplate(KafkaConfig kafkaConfig) { var config = kafkaConfig.buildProducerProperties(); // 启用Micrometer指标上报 config.put(ProducerConfig.METRIC_REPORTER_CLASSES_CONFIG, "io.micrometer.kafka.MicrometerProducerMetricsReporter"); // 将应用的MeterRegistry传递给Kafka客户端 config.put("micrometer.meter.registry", meterRegistry); var factory = new DefaultKafkaProducerFactory<String, StatusEvent>(config); // 保留原有Spring Kafka的指标监听(可选,若不需要可移除) factory.addListener(new MicrometerProducerListener<>(meterRegistry)); return new KafkaTemplate<>(factory); }
方式二:通过配置文件启用
在kafka-properties.yaml中添加Kafka客户端的全局配置:
spring: kafka: bootstrap-servers: [...] security: protocol: SASL_SSL properties: sasl: mechanism: PLAIN jaas: config: [...] producers: client-id: [...] acks: all # 新增:启用Micrometer指标上报 metric.reporters: io.micrometer.kafka.MicrometerProducerMetricsReporter
Spring Boot会自动将容器中的MeterRegistry注入到Kafka客户端,无需手动传递。
3. 验证指标
启动应用后,访问/actuator/prometheus端点,就能看到kafka_producer_前缀的全量指标,包括请求延迟、重试次数、消息发送成功率等。
补充说明
ReactiveKafkaProducerTemplate默认会自动启用Kafka客户端的原生Micrometer指标,所以另一个项目中能看到全量指标;而普通KafkaTemplate需要手动配置开启上述步骤,无需切换到Reactor实现。
内容的提问来源于stack exchange,提问作者Aisteru Firë
相关产品推荐
相关产品推荐

