0

The error handling approaches mentioned in the spring cloud stream documentations does not work with kafka stream binders.

Also, explicitly calling the DLQ handler only works with kafka lower level processing.

There does not seem to any application error handling implementation available with kafka stream DSLs.

I have enabled DLQ serde errors and it is successfully receiving the serde failed messages. Now, i want to send messages to this DLQ which are resulted into failures during processing. One approach could be to define DLQ or error topic as one of the producer destination and send the failed messages from catch block.

Is there any recommended/tried approach available to handle this scenario?

NiBa
  • 39
  • 8
  • Did you read this section in the reference docs? https://cloud.spring.io/spring-cloud-static/spring-cloud-stream-binder-kafka/2.2.0.RELEASE/spring-cloud-stream-binder-kafka.html#_error_handling – sobychacko Jun 10 '19 at 23:56
  • Yes @sobychacko, i have gone through it. I am using the serde error handling using DLQ as well. `spring.cloud.stream.kafka.streams.binder.serdeError: sendToDlq` The approach to call the dlq handler explicitly is recommended to be used only if you are using the kafka low lever processing APIs and not with DSL. Please refer this question for more details on my configuration details. https://stackoverflow.com/questions/56486658/application-runtime-exceptions-are-not-being-sent-to-errorchannel-or-serviceacti/56494803 – NiBa Jun 11 '19 at 01:06
  • It also mentions **It continues to remain hard to robust error handling using the high-level DSL; Kafka Streams doesn’t natively support error handling yet.** I wanted to know if there are any alternatives anybody tried or can be explored. – NiBa Jun 11 '19 at 01:17

0 Answers0