Spring Cloud - 9 (Spring Cloud Sleuth)

Spring Cloud Sleuth 整合

 

引入Maven依赖 

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>

日志发生的变化

当应用ClassPath下存在org.springfreamwork.cloud:spring-cloud-starter-sleuth的时候,日志会发生调整。

激活

@SpringBootApplication
public class SpringCloudSleuthDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringCloudSleuthDemoApplication.class, args);
    }
}

Zipkin整合

创建 Spring Cloud Zipkin服务器

增加Maven依赖  

<!-- 服务器依赖 -->
<dependency>
    <groupId>io.zipkin.java</groupId>
    <artifactId>zipkin-server</artifactId>
    <version>2.11.11</version>
</dependency>
<!-- 服务器ui控制器 -->
<dependency>
    <groupId>io.zipkin.java</groupId>
    <artifactId>zipkin-autoconfigure-ui</artifactId>
    <version>2.11.11</version>
</dependency>

激活Zipkin服务器

@SpringBootApplication
@EnableZipkinServer
public class SpringCloudZipkinDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringCloudZipkinDemoApplication.class, args);
    }

}

HTTP 收集 (HTTP调用)

简单整合spring-cloud-sleuth

增加Maven依赖

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>

Spring Cloud 服务整合

端口信息

  • spring-cloud-zuul:7070
  • person-client:8080
  • person-service:9090
  • Eureka Server:12345
  • ZipKin Server:23456
  • Config Server:10001

服务启动顺序

  1. zipkin Server
  2. Eureka Server
  3. spring-cloud-config-server
  4. person-server
  5. person-client
  6. spring-cloud-zuul
  7. spring-cloud-sleuth

spring-cloud-sleuth-demo改造

增加Eureka客户端依赖

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>

配置调整

spring.application.name = spring-cloud-sleuth
server.port = 6060
spring.zipkin.base-url=http://localhost:23456/
eureka.client.serviceUrl.defaultZone=http://localhost:12345/eureka

调整代码链接:spring-cloud-zuul

完整调用链路

spring-cloud-sleuth →   spring-cloud-zuul →   person-client →   person-service


@RestController
public class TestLoggerController {

    final static Logger LOGGER = LoggerFactory.getLogger(TestLoggerController.class);

    @Autowired
    @Qualifier("restTemplate")
    private RestTemplate restTemplate;

    @GetMapping("/send")
    public void send() {
        LOGGER.info(" 欢迎欢迎!");
    }

    
    @GetMapping("/to/zuul/pseron-clint/findall")
    public Object findall() {
        LOGGER.info("TestLoggerController#findall()");
        return restTemplate.getForObject("http://spring-cloud-zuul/person-client/person/findall", Object.class);
    }
}

spring-cloud-zuul上报Zipkin服务器

依赖

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-zipkin</artifactId>
        </dependency>

配置

spring.zipkin.base-url=http://localhost:23456/

person-client上报Zipkin服务器

依赖

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-zipkin</artifactId>
        </dependency>

配置

spring.zipkin.base-url=http://localhost:23456/

person-service上报Zipkin服务器

依赖

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-zipkin</artifactId>
        </dependency>

配置

spring.zipkin.base-url=http://localhost:23456/

Spring Cloud Stream 收集消息(消息)

调整spring-cloud-zipkin-server 通过Steam来收集

增加Maven依赖        
        
        

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-sleuth-zipkin-stream</artifactId>
</dependency>

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-stream-binder-kafka</artifactId>
</dependency>

激活Zipkin Stream

@SpringBootApplication
//@EnableZipkinServer
@EnableZipkinStreamServer
public class SpringCloudZipkinDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringCloudZipkinDemoApplication.class, args);
    }

}

调整spring-cloud-zuul

增加依赖

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-sleuth-stream</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-stream-binder-kafka</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>

注释HTTP上报URL

##日志上报
##spring.zipkin.base-url=http://localhost:23456/

工程实现链接:https://pan.baidu.com/s/1UPt3JJzDw-o4HJhsbyTt0g   提取码:c3ay 
 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值