一、背景
在客户环境发现一个奇怪的问题,就是服务器日志量不是很大,但是数据积压,消费能力也不行
二、排查
通过排查磁盘IO,服务器使用率,组件日志,均未发现异常。
偶然消费kafka read,即查看入口数据积压时,发现了异常。
三、结论
问题描述:
kafka read topic分区数据异常,所有数据只写入一个partition
排查结果:
flume官方说明kafka前端使用flume采集数据,Kafka Sink 使用 FlumeEvent 标头中的主题和键属性将事件发送到 Kafka。如果标头中存在主题,则事件将发送到该特定主题,从而覆盖为接收器配置的主题。如果标头中存在键,Kafka 将使用该键在主题分区之间对数据进行分区。具有相同键的事件将被发送到相同的分区。如果键为空,事件将被发送到随机分区
四、解决办法
添加拦截器:(不建议私自添加,可能影响性能或者丢数据,所以放截图,仅供参考)