zipkin mysql_SpringCloud:Zipkin链路追踪,并将数据写入mysql

packagecom.chinawayltd.altair.user.console.config;importcom.github.kristofa.brave.Brave;importcom.github.kristofa.brave.EmptySpanCollectorMetricsHandler;importcom.github.kristofa.brave.Sampler;importcom.github.kristofa.brave.SpanCollector;importcom.github.kristofa.brave.http.DefaultSpanNameProvider;importcom.github.kristofa.brave.http.HttpSpanCollector;importcom.github.kristofa.brave.mysql.MySQLStatementInterceptorManagementBean;importcom.github.kristofa.brave.okhttp.BraveOkHttpRequestResponseInterceptor;importcom.github.kristofa.brave.servlet.BraveServletFilter;importokhttp3.OkHttpClient;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.beans.factory.annotation.Value;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;/*** Created by liaokailin on 16/7/27.*/@Configurationpublic classZipkinConfig {

@Value("${com.zipkin.serviceName}")privateString serviceName;

@Value("${com.zipkin.url}")privateString url;

@Value("${com.zipkin.connectTimeout}")private intconnectTimeout;

@Value("${com.zipkin.readTimeout}")private intreadTimeout;

@Value("${com.zipkin.flushInterval}")private intflushInterval;

@Value("${com.zipkin.compressionEnabled}")private booleancompressionEnabled;

@BeanpublicSpanCollector spanCollector() {

HttpSpanCollector.Config config=HttpSpanCollector.Config.builder().connectTimeout(connectTimeout).readTimeout(readTimeout)

.compressionEnabled(compressionEnabled).flushInterval(flushInterval).build();return HttpSpanCollector.create(url, config, newEmptySpanCollectorMetricsHandler());

}

@BeanpublicBrave brave(SpanCollector spanCollector){

Brave.Builder builder= new Brave.Builder(serviceName); //指定state

builder.spanCollector(spanCollector);

builder.traceSampler(Sampler.ALWAYS_SAMPLE);

Brave brave=builder.build();returnbrave;

}

@BeanpublicBraveServletFilter braveServletFilter(Brave brave){

BraveServletFilter filter= new BraveServletFilter(brave.serverRequestInterceptor(),brave.serverResponseInterceptor(),newDefaultSpanNameProvider());returnfilter;

}

@BeanpublicOkHttpClient okHttpClient(Brave brave){

OkHttpClient client= newOkHttpClient.Builder()

.addInterceptor(new BraveOkHttpRequestResponseInterceptor(brave.clientRequestInterceptor(), brave.clientResponseInterceptor(), newDefaultSpanNameProvider()))

.build();returnclient;

}

@BeanpublicMySQLStatementInterceptorManagementBean mySQLStatementInterceptorManagementBean(Brave brave) {return newMySQLStatementInterceptorManagementBean(brave.clientTracer());

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值