diff --git a/spring-cloud-sleuth-zipkin/src/main/java/org/springframework/cloud/sleuth/zipkin2/sender/ZipkinRabbitSenderConfiguration.java b/spring-cloud-sleuth-zipkin/src/main/java/org/springframework/cloud/sleuth/zipkin2/sender/ZipkinRabbitSenderConfiguration.java index a79e8937c..26b3e7b7c 100644 --- a/spring-cloud-sleuth-zipkin/src/main/java/org/springframework/cloud/sleuth/zipkin2/sender/ZipkinRabbitSenderConfiguration.java +++ b/spring-cloud-sleuth-zipkin/src/main/java/org/springframework/cloud/sleuth/zipkin2/sender/ZipkinRabbitSenderConfiguration.java @@ -29,6 +29,7 @@ import org.springframework.cloud.sleuth.zipkin2.ZipkinAutoConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Conditional; import org.springframework.context.annotation.Configuration; +import org.springframework.util.StringUtils; @Configuration @ConditionalOnBean(CachingConnectionFactory.class) @@ -40,12 +41,17 @@ class ZipkinRabbitSenderConfiguration { @Value("${spring.zipkin.rabbitmq.queue:zipkin}") private String queue; + @Value("${spring.zipkin.rabbitmq.addresses:}") + private String addresses; + @Bean(ZipkinAutoConfiguration.SENDER_BEAN_NAME) Sender rabbitSender(CachingConnectionFactory connectionFactory, RabbitProperties config) { + String addresses = StringUtils.hasText(this.addresses) ? this.addresses + : config.determineAddresses(); return RabbitMQSender.newBuilder() .connectionFactory(connectionFactory.getRabbitConnectionFactory()) - .queue(this.queue).addresses(config.determineAddresses()).build(); + .queue(this.queue).addresses(addresses).build(); } } diff --git a/spring-cloud-sleuth-zipkin/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-cloud-sleuth-zipkin/src/main/resources/META-INF/additional-spring-configuration-metadata.json index 9527605f0..9791af806 100644 --- a/spring-cloud-sleuth-zipkin/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/spring-cloud-sleuth-zipkin/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -12,6 +12,11 @@ "description": "Name of the RabbitMQ queue where spans should be sent to Zipkin.", "defaultValue": "zipkin" }, + { + "name": "spring.zipkin.rabbitmq.addresses", + "type": "java.lang.String", + "description": "Addresses of the RabbitMQ brokers used to send spans to Zipkin" + }, { "name": "spring.zipkin.activemq.queue", "type": "java.lang.String",