我现在正在尝试kafka流。在构建应用程序的过程中,我流了一些无效事件,这些事件现在导致反序列化中的异常。
我想使用建议here的kafka-streams-application-reset,但是我不确定在哪里可以找到实际的kafka-streams application-reset?
答案 0 :(得分:3)
bin/kafka-streams-application-reset.sh
位于kafka安装目录中。但是您真的需要吗?要进行“重置”,您可以将application.id
属性更新为kafka流配置的任何新值。仍然,如果您最早使用自动偏移量重置,则重置工具不会删除已经存在的无效记录。您可能需要auto.offset.reset: latest
,但这取决于您的用例。
如果您只想跳过并记录无效的传入消息,则可以使用kafka streams属性
default.deserialization.exception.handler: org.apache.kafka.streams.errors.LogAndContinueExceptionHandler