源码:https://gitee.com/GXQ205153964/sleuth-parent.git
Spirng Cloud Sleuth 其实是个工具,它在整个分布式系统中能跟踪一个用户请求的过程,捕获这些跟踪数据,就能构建微服务的整个调用链路的视图,这是调试和监控微服务的关键工具。
Zipkin是Twitter的一个开源的项目 ,他致力于收集服务的定时数据,以解决微服务架构中的延迟问题,包括数据的收集 存储 查找和展现。
流程:
链接:https://pan.baidu.com/s/1Ircbif6-JLr7-2xFhLmmCw
提取码:2015
cmd界面运行这个jar包
java -jar .\zipkin-server-2.12.9-exec.jar


照着这个搭建一个Eureka-server-sleuth sleuth-cousumer 和sleuth-provider
参考:springcloud代码里的Eureka server模块 cousumer和provider模块
pom.xml
- <project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0modelVersion>
-
- <groupId>com.itheimagroupId>
- <artifactId>sleuth-parentartifactId>
- <packaging>pompackaging>
- <version>1.0-SNAPSHOTversion>
- <modules>
- <module>sleuth-providermodule>
- <module>sleuth-consumermodule>
- <module>eureka-server-sleuthmodule>
- modules>
-
- <parent>
- <groupId>org.springframework.bootgroupId>
- <artifactId>spring-boot-starter-parentartifactId>
- <version>2.1.0.RELEASEversion>
- <relativePath/>
- parent>
-
-
- <properties>
- <project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
- <project.reporting.outputEncoding>UTF-8project.reporting.outputEncoding>
- <java.version>1.8java.version>
- <spring-cloud.version>Greenwich.RELEASEspring-cloud.version>
- properties>
-
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>org.springframework.cloudgroupId>
- <artifactId>spring-cloud-dependenciesartifactId>
- <version>${spring-cloud.version}version>
- <type>pomtype>
- <scope>importscope>
- dependency>
- dependencies>
- dependencyManagement>
- project>
application.yml
- server:
- port: 8761
-
-
- eureka:
- instance:
- hostname: localhost # 主机名
- client:
- service-url:
- defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka # eureka服务端地址,将来客户端使用该地址和eureka进行通信
- register-with-eureka: false # 是否将自己的路径 注册到eureka上。eureka server 不需要的,eureka provider client 需要
- fetch-registry: false # 是否需要从eureka中抓取路径。eureka server 不需要的,eureka consumer client 需要
- server:
- enable-self-preservation: false # 关闭自我保护机制
- eviction-interval-timer-in-ms: 3000 # 检查服务的时间间隔
-
-
pom.xml
- <dependencies>
-
- <dependency>
- <groupId>org.springframework.bootgroupId>
- <artifactId>spring-boot-starter-webartifactId>
- dependency>
-
-
- <dependency>
- <groupId>org.springframework.cloudgroupId>
- <artifactId>spring-cloud-starter-netflix-eureka-serverartifactId>
- dependency>
-
- dependencies>
application.yml
- server:
- port: 9000
-
-
- eureka:
- instance:
- hostname: localhost # 主机名
- client:
- service-url:
- defaultZone: http://localhost:8761/eureka
- spring:
- application:
- name: feign-consumer # 设置当前应用的名称。将来会在eureka中Application显示。将来需要使用该名称来获取路径
- zipkin:
- base-url: http://localhost:9411/ # 设置zipkin的服务端路径
-
- sleuth:
- sampler:
- probability: 1 # 采集率 默认 0.1 百分之十。
-
-
- logging:
- level:
- com.itheima: debug
-
-
-
pom.xml
- <dependencies>
-
-
- <dependency>
- <groupId>org.springframework.bootgroupId>
- <artifactId>spring-boot-starter-webartifactId>
- dependency>
-
- <dependency>
- <groupId>org.springframework.bootgroupId>
- <artifactId>spring-boot-starter-testartifactId>
- <scope>testscope>
- dependency>
-
- <dependency>
- <groupId>org.springframework.bootgroupId>
- <artifactId>spring-boot-starter-actuatorartifactId>
- dependency>
-
-
-
- <dependency>
- <groupId>org.springframework.cloudgroupId>
- <artifactId>spring-cloud-starter-netflix-eureka-clientartifactId>
- dependency>
-
-
-
- <dependency>
- <groupId>org.springframework.cloudgroupId>
- <artifactId>spring-cloud-starter-openfeignartifactId>
- dependency>
-
- <dependency>
- <groupId>org.springframework.bootgroupId>
- <artifactId>spring-boot-starter-loggingartifactId>
- dependency>
-
- <dependency>
- <groupId>org.springframework.cloudgroupId>
- <artifactId>spring-cloud-starter-netflix-hystrixartifactId>
- dependency>
-
-
-
-
- <dependency>
- <groupId>org.springframework.cloudgroupId>
- <artifactId>spring-cloud-starter-zipkinartifactId>
- dependency>
-
- dependencies>
application.yml
- server:
- port: 8000
-
- eureka:
- client:
- service-url:
- defaultZone: http://localhost:8761/eureka
- spring:
- application:
- name: feign-provider
- zipkin:
- base-url: http://localhost:9411/ # 设置zipkin的服务端路径
-
- sleuth:
- sampler:
- probability: 1 # 采集率 默认 0.1 百分之十。
-
pom.xml
- <dependencies>
-
-
- <dependency>
- <groupId>org.springframework.bootgroupId>
- <artifactId>spring-boot-starter-webartifactId>
- dependency>
-
- <dependency>
- <groupId>org.springframework.bootgroupId>
- <artifactId>spring-boot-starter-actuatorartifactId>
- dependency>
-
-
-
- <dependency>
- <groupId>org.springframework.cloudgroupId>
- <artifactId>spring-cloud-starter-netflix-eureka-clientartifactId>
- dependency>
-
-
-
-
-
-
- <dependency>
- <groupId>org.springframework.cloudgroupId>
- <artifactId>spring-cloud-starter-zipkinartifactId>
- dependency>
-
-
- dependencies>

