Не найден zipkin2.reporter.Отправитель с rabbit

#docker #netflix-eureka #zipkin

#докер #netflix-эврика #zipkin

Вопрос:

Я развертываю zipkin в докере (zipkin-server-2.21.7-exec.jar ) и я подключаюсь к rabbit в докере. Я использую Eureka в docker для регистрации микросервисов. Когда я запускаю один из этих микросервисов, эта ошибка сравнивает

НЕ УДАЛОСЬ ЗАПУСТИТЬ ПРИЛОЖЕНИЕ


Описание:

Параметр 2 метода reporter в org.springframework.cloud.для настройки sleuth.zipkin2.ZipkinAutoConfiguration требовался компонент типа ‘zipkin2.reporter.Отправитель ‘, который не удалось найти.

Были найдены следующие кандидаты, но их не удалось внедрить:

  • Метод компонента ‘rabbitSender’ в ‘ZipkinRabbitSenderConfiguration’ не загружен, потому что @ConditionalOnBean (типы: org.springframework.amqp.rabbit.connection.CachingConnectionFactory; SearchStrategy: all) не найдено никаких компонентов типа org.springframework.amqp.rabbit.connection.CachingConnectionFactory

  • Метод компонента ‘restTemplateSender’ в ‘ZipkinRestTemplateSenderConfiguration’ не загружен, потому что ZipkinSender org.springframework.cloud.sleuth.zipkin2.sender.ZipkinRestTemplateSenderConfiguration тип отправителя rabbit

Экшен:

Рассмотрите возможность пересмотра записей выше или определения компонента типа ‘zipkin2.reporter.Отправитель’ в вашей конфигурации.


Я использую эти свойства spring.zipkin.sender.type=rabbit spring.zipkin.base-url=http://zipkin-server:9411/

Комментарии:

1. Вы решили эту проблему? Я получаю ту же ошибку.

Ответ №1:

Я реализовал свой собственный класс конфигурации как;

 @Slf4j
@Configuration
public class TracingReportToRabbitConfiguration {

// Custom configuration for a Zipkin RabbitMQ Sender instantiation

@Bean(value="zipkinSender")
Sender sender(@Value("${spring.rabbitmq.addresses}") String rabbitmqHostUrl,
              @Value("${spring.rabbitmq.queue:zipkin}") String zipkinQueue,
              @Value("${spring.rabbitmq.username}") String username,
              @Value("${spring.rabbitmq.password}") String password,
              @Value("${spring.rabbitmq.ssl.enabled:false}") boolean useSSL) throws KeyManagementException, NoSuchAlgorithmException {
....
  

который работает для меня.