关于Springcloud Sleuth分布式请求链路跟踪的使用 小结

目录

1. Sleuth概述

2. Zipkin配置

3. Sleuth案例

3.1 服务提供者

3.2 服务消费者

3.3 依赖关系


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提供了一套完整的服务跟踪的解决方案。

关于Springcloud Sleuth分布式请求链路跟踪的使用 小结_第1张图片

2. Zipkin配置

1) 下载Zipkin的zipkin-server-2.12.9-exec.jar。

2) 启动zipkin:java -jar .\zipkin-server-2.12.9-exec.jar。

关于Springcloud Sleuth分布式请求链路跟踪的使用 小结_第2张图片

3) 访问zipkin(localhost:9411/zipkin/)。

关于Springcloud Sleuth分布式请求链路跟踪的使用 小结_第3张图片

3. Sleuth案例

以下案例代码的Github地址。

四个modules分别是:cloud-eureka-server7001,cloud-provider-hystrix-payment8001,cloud-consumer-feign-hystrix-order80。

3.1 服务提供者

1) cloud-provider-payment8001添加zipkin依赖。


    org.springframework.cloud
    spring-cloud-starter-zipkin

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依赖。


    org.springframework.cloud
    spring-cloud-starter-zipkin

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 依赖关系

关于Springcloud Sleuth分布式请求链路跟踪的使用 小结_第4张图片

你可能感兴趣的:(#,Springcloud,Java,#,Spring,Java,Springcloud,Sleuth,微服务,分布式链路追踪)