修改common-spring的依赖和解决log冲突

parent cab519aa
...@@ -129,25 +129,9 @@ ...@@ -129,25 +129,9 @@
<dependency> <dependency>
<groupId>io.zipkin.brave</groupId> <groupId>io.zipkin.brave</groupId>
<artifactId>brave-context-log4j2</artifactId> <artifactId>brave-context-slf4j</artifactId>
<version>${brave.version}</version> <version>${brave.version}</version>
</dependency> </dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-jul</artifactId>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-jcl</artifactId>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
</dependency>
</dependencies> </dependencies>
......
package cn.quantgroup.tech.brave.configuration; package cn.quantgroup.tech.brave.configuration;
import brave.Tracing; import brave.Tracing;
import brave.context.log4j2.ThreadContextCurrentTraceContext; import brave.context.slf4j.MDCCurrentTraceContext;
import brave.http.HttpTracing; import brave.http.HttpTracing;
import brave.httpclient.TracingHttpClientBuilder; import brave.httpclient.TracingHttpClientBuilder;
import brave.okhttp3.TracingInterceptor; import brave.okhttp3.TracingInterceptor;
...@@ -24,6 +24,7 @@ import org.springframework.amqp.rabbit.core.RabbitTemplate; ...@@ -24,6 +24,7 @@ import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.AutoConfigureOrder; import org.springframework.boot.autoconfigure.AutoConfigureOrder;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
...@@ -71,11 +72,11 @@ public class BraveAutoConfiguration { ...@@ -71,11 +72,11 @@ public class BraveAutoConfiguration {
} }
@Configuration @Configuration
@EnableConfigurationProperties( BraveProperties.class )
@ConditionalOnProperty( prefix = "tech.brave", name = "enabled", havingValue = "false" ) @ConditionalOnProperty( prefix = "tech.brave", name = "enabled", havingValue = "false" )
public static class BraveUntEnabled { public static class BraveUntEnabled {
@Configuration @Configuration
@ConditionalOnClass( RabbitTemplate.class ) @ConditionalOnClass( RabbitTemplate.class )
@ConditionalOnProperty( prefix = "tech.brave", name = "enabled", havingValue = "false" )
public static class RabbitTemplateEnable { public static class RabbitTemplateEnable {
/** /**
* 提供RabbitTemplateBuilder,业务系统需要使用该Builder生成RabbitTemplate * 提供RabbitTemplateBuilder,业务系统需要使用该Builder生成RabbitTemplate
...@@ -90,6 +91,7 @@ public class BraveAutoConfiguration { ...@@ -90,6 +91,7 @@ public class BraveAutoConfiguration {
@Configuration @Configuration
@ConditionalOnClass( HttpClient.class ) @ConditionalOnClass( HttpClient.class )
@ConditionalOnProperty( prefix = "tech.brave", name = "enabled", havingValue = "false" )
public static class HttpClientEnable { public static class HttpClientEnable {
/** /**
* 提供HttpClientBuilderBean * 提供HttpClientBuilderBean
...@@ -99,12 +101,13 @@ public class BraveAutoConfiguration { ...@@ -99,12 +101,13 @@ public class BraveAutoConfiguration {
@Bean( name = "techHttpClientBuilder" ) @Bean( name = "techHttpClientBuilder" )
public HttpClientBuilder httpClientBuilder() { public HttpClientBuilder httpClientBuilder() {
log.info("注册HttpClientBuilder"); log.info("注册HttpClientBuilder");
return TracingHttpClientBuilder.create(); return HttpClientBuilder.create();
} }
} }
@Configuration @Configuration
@ConditionalOnClass( OkHttpClient.class ) @ConditionalOnClass( OkHttpClient.class )
@ConditionalOnProperty( prefix = "tech.brave", name = "enabled", havingValue = "false" )
public static class OkHttpClientEnable { public static class OkHttpClientEnable {
/** /**
...@@ -121,6 +124,7 @@ public class BraveAutoConfiguration { ...@@ -121,6 +124,7 @@ public class BraveAutoConfiguration {
@Configuration @Configuration
@ConditionalOnClass( RestTemplate.class ) @ConditionalOnClass( RestTemplate.class )
@ConditionalOnProperty( prefix = "tech.brave", name = "enabled", havingValue = "false" )
public static class RestTemplateEnable { public static class RestTemplateEnable {
/** /**
* 提供RestTemplate * 提供RestTemplate
...@@ -153,26 +157,30 @@ public class BraveAutoConfiguration { ...@@ -153,26 +157,30 @@ public class BraveAutoConfiguration {
private SpanCustomizingAsyncHandlerInterceptor spanCustomizingAsyncHandlerInterceptor; private SpanCustomizingAsyncHandlerInterceptor spanCustomizingAsyncHandlerInterceptor;
@Bean @Bean
@ConditionalOnMissingBean
Sender sender() { Sender sender() {
return KafkaSender.newBuilder().bootstrapServers(braveProperties.getKafkaBootstrapServers()).topic(braveProperties.getKafkaTopic()).encoding(Encoding.JSON).build(); return KafkaSender.newBuilder().bootstrapServers(braveProperties.getKafkaBootstrapServers()).topic(braveProperties.getKafkaTopic()).encoding(Encoding.JSON).build();
} }
@Bean @Bean
@ConditionalOnMissingBean
AsyncReporter<Span> spanReporter() { AsyncReporter<Span> spanReporter() {
return AsyncReporter.create(sender()); return AsyncReporter.create(sender());
} }
@Bean @Bean
@ConditionalOnMissingBean
Tracing tracing() { Tracing tracing() {
return Tracing.newBuilder() return Tracing.newBuilder()
.sampler(brave.sampler.Sampler.create(braveProperties.getSample())) .sampler(brave.sampler.Sampler.create(braveProperties.getSample()))
.localServiceName(serviceProperties.getName()) .localServiceName(serviceProperties.getName())
.propagationFactory(ExtraFieldPropagation.newFactory(B3Propagation.FACTORY, "user-name")) .propagationFactory(ExtraFieldPropagation.newFactory(B3Propagation.FACTORY, "user-name"))
.currentTraceContext(ThreadContextCurrentTraceContext.create()) .currentTraceContext(MDCCurrentTraceContext.create())
.spanReporter(spanReporter()).build(); .spanReporter(spanReporter()).build();
} }
@Bean @Bean
@ConditionalOnMissingBean
public HttpTracing httpTracing(Tracing tracing) { public HttpTracing httpTracing(Tracing tracing) {
return HttpTracing.create(tracing); return HttpTracing.create(tracing);
} }
...@@ -196,6 +204,7 @@ public class BraveAutoConfiguration { ...@@ -196,6 +204,7 @@ public class BraveAutoConfiguration {
@Configuration @Configuration
@ConditionalOnClass( RabbitTemplate.class ) @ConditionalOnClass( RabbitTemplate.class )
@ConditionalOnProperty( prefix = "tech.brave", name = "enabled", havingValue = "true" )
public static class RabbitTemplateEnable { public static class RabbitTemplateEnable {
/** /**
* 提供RabbitTemplateBuilder,业务系统需要使用该Builder生成RabbitTemplate * 提供RabbitTemplateBuilder,业务系统需要使用该Builder生成RabbitTemplate
...@@ -211,6 +220,7 @@ public class BraveAutoConfiguration { ...@@ -211,6 +220,7 @@ public class BraveAutoConfiguration {
@Configuration @Configuration
@ConditionalOnClass( HttpClient.class ) @ConditionalOnClass( HttpClient.class )
@ConditionalOnProperty( prefix = "tech.brave", name = "enabled", havingValue = "true" )
public static class HttpClientEnable { public static class HttpClientEnable {
/** /**
* 提供HttpClientBuilderBean * 提供HttpClientBuilderBean
...@@ -227,6 +237,7 @@ public class BraveAutoConfiguration { ...@@ -227,6 +237,7 @@ public class BraveAutoConfiguration {
@Configuration @Configuration
@ConditionalOnClass( OkHttpClient.class ) @ConditionalOnClass( OkHttpClient.class )
@ConditionalOnProperty( prefix = "tech.brave", name = "enabled", havingValue = "true" )
public static class OkHttpClientEnable { public static class OkHttpClientEnable {
/** /**
* 提供OkHttpClientBean * 提供OkHttpClientBean
...@@ -246,6 +257,7 @@ public class BraveAutoConfiguration { ...@@ -246,6 +257,7 @@ public class BraveAutoConfiguration {
@Configuration @Configuration
@ConditionalOnClass( RestTemplate.class ) @ConditionalOnClass( RestTemplate.class )
@ConditionalOnProperty( prefix = "tech.brave", name = "enabled", havingValue = "true" )
@Import( TracingClientHttpRequestInterceptor.class ) @Import( TracingClientHttpRequestInterceptor.class )
public static class RestTemplateEnable { public static class RestTemplateEnable {
@Autowired @Autowired
......
...@@ -90,18 +90,19 @@ ...@@ -90,18 +90,19 @@
<artifactId>lombok</artifactId> <artifactId>lombok</artifactId>
<version>1.16.16</version> <version>1.16.16</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId> <artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.assertj</groupId> <groupId>org.springframework.cloud</groupId>
<artifactId>assertj-core</artifactId> <artifactId>spring-cloud-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework</groupId> <groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId> <artifactId>spring-jdbc</artifactId>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment