...
Code Block | ||
---|---|---|
| ||
public static final String ERRORS_DEADLETTERQUEUE_TOPIC_NAME_CONFIG = "errors.deadletterqueue.topic.name";
.define(ERRORS_DEADLETTERQUEUE_TOPIC_NAME_CONFIG, // required with no default value
Type.STRING,
null, /* default */
Importance.HIGH,
ERRORS_DEADLETTERQUEUE_TOPIC_NAME_DOC) |
...
If the user implement a custom exception handler, it is up to the custom handler to decide if a record should be send to the DLQ topicto build DLQ records to send, in this case, the errors.deadletterqueue.topic.name configuration is ignoredname configuration has no impact.
Code Block | ||
---|---|---|
| ||
@Override public ProcessingHandlerResponse handle(final ErrorHandlerContext context, final Record<?, ?> record, final Exception exception) { return ProcessingHandlerResponse.CONTINUE .andAddToDeadLetterQueue(Collections.singletonList( new ProducerRecord<>("app-dlq", "Hello".getBytes(StandardCharsets.UTF_8), "World".getBytes(StandardCharsets.UTF_8)) )); } |
...
Compatibility, Deprecation, and Migration Plan
...
All other changes are backward compatible and should not impact existing applications.
...