Spring Kafka消费者指标与实际消费数不匹配问题咨询
Spring Kafka批量消费中Prometheus指标与实际消费数存在差异的问题
问题描述
我使用spring-kafka 2.8.6实现了批量消费的Kafka消费者,代码如下:
@KafkaListener(topics = "mytopic", groupId = "mygroup", autoStartup = "true", concurrency = "3", id = "my-listener", containerFactory = "KafkaListenerContainerFactory") public void consume(List<ConsumerRecord> records) { // process messages }
负载测试后,我通过自定义变量统计实际消费消息数,同时从Prometheus端点获取Spring Kafka默认指标spring.kafka.listener的消费统计。对比发现两者存在小幅差异:实际消费3000条时,指标统计少70-100条。
已完成排查:
- 死信队列(DLT)无消息进入;且即便有消息进入DLT,也应在Prometheus指标中体现。
请问这是已知问题吗?还是我遗漏了什么配置或细节?
相关配置与信息
Prometheus配置
management: endpoints: web: exposure: include: health,prometheus,env base-path: / endpoint: health: show-details: always metrics: web: server: request: autotime: enabled: true percentiles-histogram: true distribution: sla: http: server: requests: 300ms,500ms
Prometheus端点部分指标
spring_kafka_listener_seconds Kafka Listener Timer spring_kafka_listener_seconds summary spring_kafka_listener_seconds_count{exception="none",name="my-listener-1",result="success",} 4730.0 spring_kafka_listener_seconds_sum{exception="none",name="my-listener-1",result="success",} 2.941328279
使用的依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> <version>2.7.3</version> </dependency> <dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-registry-prometheus</artifactId> <version>1.9.3</version> </dependency>
内容的提问来源于stack exchange,提问作者Dushan
相关产品推荐
相关产品推荐

