
# Kafka Consumer消费数据丢失如何处理
#### 问题背景与现象
用户将消费完的数据存入数据库，发现数据与生产数据不一致，怀疑Kafka消费丢数据。
#### 可能原因
- 业务代码原因
- Kafka生产数据写入异常
- Kafka消费数据异常
 
#### 解决办法
Kafka排查：
1. 通过consumer-groups.sh来观察写入和消费的offset的变化情况（生产一定数量的消息，客户端进行消费，观察offset的变化）。 
   ![](https://support.huaweicloud.com/trouble-mrs/zh-cn_image_0264281538.png "点击放大")
   
   
2. 新建一个消费组，用客户端进行消费，然后查看消费的消息。 
   new-consumer:
   kafka-console-consumer.sh --topic \<topic name\> --bootstrap-server \<IP1:PORT, IP2:PORT,...\> --new-consumer --consumer.config \<config file\>
   
   
业务代码排查：
1. 查看客户端里有没有提交offset的报错。
2. 如果没有报错把消费的API里加上打印消息，打印少量数据（只打印key即可），查看丢失的数据。
 
