java如何在使用SpringKafka框架时处理错误/异常?
我无法找到如何在中为spring kafka消费者执行自定义错误处理
我的要求是:
- 对于任何反序列化错误,只需将错误和消息写入数据库李>
- 对于在
@KafkaListener
方法下执行的任何错误,请重试3次,然后将错误和消息写入数据库李>
从spring文档中我发现,
对于1,我必须使用ErrorHandlingDeserializer
,然后它将调用@KafkaListener错误处理程序。
对于2,框架提供了处理消息重试的SeekToCurrentErrorHandler
我不明白除了启用配置的重试之外,在哪里可以添加代码来将异常/消息写入数据库
# 1 楼答案
将恢复程序添加到
SeekToCurrentErrorHandler
默认情况下,不会重试反序列化异常;大多数其他程序在调用恢复程序之前都会重试