SpringCloud极简入门>断路器监控#turbine

128 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

简介

上篇的hystrix dashboard只能断路监控一个微服务,本篇的turbine可以监控多个微服务,通过yml中配置app-config即可监控该微服务的各个端口;

前置内容: SpringCloud极简入门>断路器监控#hystrix dashboard

实战

1、创建《turbine-dashboard》模块

1.1、pom

<?xml version="1.0" encoding="UTF-8"?>
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>cc.catface</groupId>
        <artifactId>simple-eureka</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>
    <artifactId>turbine-dashboard</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>turbine-dashboard</name>

    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
        </dependency>
        <!--turbine依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-turbine</artifactId>
        </dependency>
    </dependencies>
</project>

1.2、yml

server:
  port: 8061

spring:
  application:
    name: turbine-dashboard

eureka:
  client:
    service-url:
      defaultZone: http://localhost:7000/eureka/

#支持turbine
turbine:
  aggregator:
    cluster-config: default
  #监控的微服务
  app-config: server-order
  cluster-name-expression: new String("default")

1.3、application

《turbine-dashboard》的application声明注解@EnableTurbine

2、查看效果

1、以7002和7003端口启动《server-order》; 2、分别请求http://localhost:7002/testFeign和http://localhost:7003/testFeign; 3、打开http://localhost:8060/hystrix,输入http://localhost:8061/turbine.stream,点击Monitor Stream; 在这里插入图片描述 在这里插入图片描述 4、分别多次重复请求步骤2、,观察控制台,发现《server-account》服务正常; 在这里插入图片描述 5、关闭《server-account》后,重复步骤2、观察控制台,发现《server-account》服务不可达; 在这里插入图片描述