Стартер настраивает retry при ошибке авторизации подключения к Kafka-брокеру. По умолчанию в Spring Kafka при ошибке авторизации переподключение не выполняется.
dependencies {
implementation "my.project:kafka-spring-boot-starter:1"
}
kafka:
customizer:
enabled: true
auth-retry-interval-seconds: 60
auth-retry-interval-seconds
Опционален, если не задан в конфигурации, будет установлено значение 60 секунд.
Должен быть меньше чем max.poll.interval.ms у consumer, по умолчанию равен 5 минутам.
spring-boot version >= 3.1.0
При настройке через yaml ничего дополнительно настраивать не требуется.
spring-boot version < 3.1.0 или настройка через создание бинов
@Bean
public ConcurrentKafkaListenerContainerFactory<Object, Object> kafkaListenerContainerFactory() {
var factory = new ConcurrentKafkaListenerContainerFactory<>();
// Подставить ConsumerFactory
factory.setConsumerFactory(getConsumerFactory());
// Использовать static метод из класса KafkaCustomizerConfig
factory.setContainerCustomizer(KafkaCustomizerConfig.getContainerCustomizer(60));
return factory;
}