Я пытался использовать некоторые улучшения в Kafka Connect в версии 2.0.0, как указано в этом KIP https://cwiki.apache.org/confluence/display/KAFKA/KIP-298%3A+Error+Handling+in+Connect, и я наткнулся на этот хороший пост в блоге Робина https://www.confluent.io/blog/kafka-connect-deep-dive-error-handling-dead-letter-queues.
Вотмои вопросы
Я установил errors.tolerance=all
в конфигурации моего коннектора.Если я правильно понимаю, это не подведет для плохих записей и двигаться вперед.Правильно ли мое понимание?В моем случае потребитель не отказывает и остается в состоянии RUNNING
(что ожидается), но смещения потребителя не продвигаются вперед для разделов с плохими записями.Есть предположения, почему это может происходить?
Я установил для errors.log.include.messages
и errors.log.enable
значение true для моего соединителя, но я не вижу дополнительной регистрации для неудачных записей.Журналы похожи на то, что я видел до включения этих свойств.Я не видел ни одного сообщения, подобного этому https://github.com/apache/kafka/blob/5a95c2e1cd555d5f3ec148cc7c765d1bb7d716f9/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/errors/LogReporter.java#L67
Некоторый контекст: В моем коннекторе я делаю некоторые преобразования, проверки для каждой записи и, если что-то из этого не получается, я выкидываю RetriableException
.Раньше я бросал RuntimeException
, но я изменил на RetriableException после прочтения комментариев для RetryWithToleranceOperator class.
Я пытался сохранить его, но сообщите мне, еслилюбой дополнительный контекст не требуется.
Большое спасибо заранее!