Sleuth的作用
SpringCloud-Sleuth是Spring Cloud的组成部分之一,为SpringCloud应用实现了一种分布式追踪解决方案,其兼容了Zipkin, HTrace和log-based追踪
Sleuth与Zipkin的搭建
在spring Cloud为Finchley版本时,如果只需要默认的实现,则不需要自己构建Zipkin Server了,只需要下载jar即可,下载地址:https://dl.bintray.com/openzipkin/maven/io/zipkin/java/zipkin-server。
通过以下命令启动服务,默认INFO级别可以不设置logging。
java -jar zipkin-server-2.12.2-exec.jar --logging.level.zipkin2=INFO
服务启动后默认可以通过9411端口访问Zipkin的监控页面。(http://127.0.0.1:9411)
Sleuth服务端配置
引入pom文件。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
修改配置文件。
spring:
application:
name: cloud-payment-service
zipkin:
base-url: http://127.0.0.1:9411
sleuth:
sampler:
# 采样率介于0到1之间,1则表示全部采集
probability: 1
创建服务调用接口。
@GetMapping(value="/payment/zipkin")
public String paymentZipkin(){
return "fsdfdsfsdfsdfsdfsdfds";
}
调用服务,则会在Zipkin客户端显示服务调用链路。
