1、UnknownTopicOrPartitionException
org.apache.kafka.common.errors.UnknownTopicOrPartitionException: This server does not host this topic-partition
报错内容:分区数据不在
原因分析:producer向不存在的topic发送消息,用户可以检查topic是否存在 或者设置auto.create.topics.enable参数
2、LEADER_NOT_AVAILABLE
WARN Error while fetching metadata with correlation id 0 : {test=LEADER_NOT_AVAILABLE} (org.apache.kafka.clients.NetworkClient
报错内容:leader不可用
原因分析:原因很多 topic正在被删除 正在进行leader选举 使用kafka-topics脚本检查leader信息
进而检查broker的存活情况 尝试重启解决
3、NotLeaderForPartitionException
org.apache.kafka.common.errors.NotLeaderForPartitionException: This server is not the leader for that topic-partition
报错内容:broker已经不是对应分区的leader了
原因分析:发生在leader变更时 当leader从一个broker切换到另一个broker时,要分析什么原因引起了leader的切换
4、TimeoutException
org.apache.kafka.common.errors.TimeoutException: Expiring 5 record(s) for test-0: 30040 ms has passe
报错内容:请求超时
原因分析:观察哪里抛出的 观察网络是否能通 如果可以通 可以考虑增加request.timeout.ms的值
5、RecordTooLargeException
WARN async.DefaultEventHandler: Produce request with correlation id 92548048 failed due to [TopicName,1]: org.apache.kafka.common.errors.RecordTooLargeException
报错内容:消息过大
原因分析:生产者端 消息处理不过来了 可以增加 request.timeout.ms 减少 batch.size
6、Closing socket connection
Closing socket connection to/127,0,0,1.(kafka.network.Processor)
报错内容:连接关闭
原因分析:如果javaApi producer版本高,想在客户端consumer启动低版本验证,会不停的报错
无法识别客户端消息。
7、ConcurrentModificationException
java.util.ConcurrentModificationException: KafkaConsumer is not safe for multi-threaded access
报错内容:线程不安全
原因分析:Kafka consumer是非线程安全的
8、NetWorkException
[kafka-producer-network-thread | producer-1] o.apache.kafka.common.network.Selector : [Producer clientId=producer-1] Connection with / disconnected
报错内容:网络异常
原因分析:网络连接中断 检查broker的网络情况
9、ILLEGAL_GENERATION
ILLEGAL_GENERATION occurred while committing offsets for group
报错内容:无效的“代”
原因分析:consumer错过了 rebalance 原因是consumer花了大量时间处理数据。
需要适当减少 max.poll.records值 增加 max.poll.interval.ms 或者想办法增加消息处理的速度