From 4d6fbd29bb55283d82467b981df200687bc4aa89 Mon Sep 17 00:00:00 2001 From: Marcin Grzejszczak Date: Wed, 16 Mar 2016 16:20:35 +0100 Subject: [PATCH] Added missing conditionals without it if you provide `spring.sleuth.enaled:false` the app would blow up --- .../messaging/TraceSpanMessagingAutoConfiguration.java | 2 ++ .../cloud/sleuth/stream/SleuthStreamAutoConfiguration.java | 3 +++ 2 files changed, 5 insertions(+) diff --git a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/messaging/TraceSpanMessagingAutoConfiguration.java b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/messaging/TraceSpanMessagingAutoConfiguration.java index 6111c5f8f..576d8b363 100644 --- a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/messaging/TraceSpanMessagingAutoConfiguration.java +++ b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/messaging/TraceSpanMessagingAutoConfiguration.java @@ -18,6 +18,7 @@ package org.springframework.cloud.sleuth.instrument.messaging; import java.util.Random; +import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.cloud.sleuth.SpanExtractor; import org.springframework.cloud.sleuth.SpanInjector; import org.springframework.cloud.sleuth.TraceKeys; @@ -35,6 +36,7 @@ import org.springframework.messaging.support.MessageBuilder; * @since 1.0.0 */ @Configuration +@ConditionalOnBean({TraceKeys.class, Random.class}) public class TraceSpanMessagingAutoConfiguration { @Bean diff --git a/spring-cloud-sleuth-stream/src/main/java/org/springframework/cloud/sleuth/stream/SleuthStreamAutoConfiguration.java b/spring-cloud-sleuth-stream/src/main/java/org/springframework/cloud/sleuth/stream/SleuthStreamAutoConfiguration.java index c34239bc2..4bb690a00 100644 --- a/spring-cloud-sleuth-stream/src/main/java/org/springframework/cloud/sleuth/stream/SleuthStreamAutoConfiguration.java +++ b/spring-cloud-sleuth-stream/src/main/java/org/springframework/cloud/sleuth/stream/SleuthStreamAutoConfiguration.java @@ -18,6 +18,7 @@ package org.springframework.cloud.sleuth.stream; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.boot.autoconfigure.AutoConfigureBefore; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; @@ -28,6 +29,7 @@ import org.springframework.boot.context.properties.EnableConfigurationProperties import org.springframework.cloud.client.discovery.DiscoveryClient; import org.springframework.cloud.sleuth.Sampler; import org.springframework.cloud.sleuth.metric.SpanMetricReporter; +import org.springframework.cloud.sleuth.metric.TraceMetricsAutoConfiguration; import org.springframework.cloud.sleuth.sampler.PercentageBasedSampler; import org.springframework.cloud.sleuth.sampler.SamplerProperties; import org.springframework.cloud.stream.annotation.EnableBinding; @@ -51,6 +53,7 @@ import org.springframework.messaging.support.ChannelInterceptor; */ @Configuration @EnableConfigurationProperties({SleuthStreamProperties.class, SamplerProperties.class}) +@AutoConfigureAfter(TraceMetricsAutoConfiguration.class) @AutoConfigureBefore(ChannelBindingAutoConfiguration.class) @EnableBinding(SleuthSource.class) @ConditionalOnProperty(value = "spring.sleuth.stream.enabled", matchIfMissing = true)