@Bean 
fun interceptor(recoverer: RetryMessageRecoverer): StatefulRetryOperationsInterceptor { 
    return RetryInterceptorBuilder.stateful() 
            .maxAttempts(3) 
            .messageKeyGenerator { message -> message.messageProperties.headers["eventId"] } 
            .recoverer(recoverer) 
            .build() 
}