目录
1. Sleuth概述
Sleuth configures everything you need to get started. This includes where trace data (spans) are reported to, how many traces to keep (sampling), if remote fields (baggage) are sent, and which libraries are traced.
微服务框架中,一个由客户端发起的请求在后端系统中经过多个不同的服务节点调用来协同产生最后的请求结果,每个请求都会形成一条复杂的分布式服务调用链路,而Springcloud Sleuth提供了一套完整的服务跟踪的解决方案。
2. Zipkin配置
1) 下载Zipkin的zipkin-server-2.12.9-exec.jar。
2) 启动zipkin:java -jar .\zipkin-server-2.12.9-exec.jar。
3) 访问zipkin(localhost:9411/zipkin/)。
3. Sleuth案例
以下案例代码的Github地址。
四个modules分别是:cloud-eureka-server7001,cloud-provider-hystrix-payment8001,cloud-consumer-feign-hystrix-order80。
3.1 服务提供者
1) cloud-provider-payment8001添加zipkin依赖。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
2) 添加zipkin配置。
zipkin:
base-url: http://localhost:9411
sleuth:
sampler:
#采样取值介于 0到1之间,1则表示全部收集
probability: 1
3) PaymentController添加接口:
@GetMapping(value="/payment/zipkin")
public String paymentZipkin() {
return "hello,i am paymentZipkin server fallback,O(∩_∩)O哈哈~";
}
3.2 服务消费者
1) cloud-consumer-feign-hystrix-order80添加zipkin依赖。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
2) 添加zipkin配置。
zipkin:
base-url: http://localhost:9411
sleuth:
sampler:
#采样取值介于 0到1之间,1则表示全部收集
probability: 1
3) ordercontroller添加接口:
@GetMapping(value="/consumer/payment/zipkin")
public String paymentZipkin() {
return restTemplate.getForObject("http://127.0.0.1:8001/payment/zipkin/",String.class);
}
3.3 依赖关系
原文地址:https://blog.csdn.net/BAStriver/article/details/113705859
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。