<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <spring-cloud.version>Finchley.SR3</spring-cloud.version> </properties> <dependencyManagement> <dependencies> <dependency> <!-- SpringCloud 所有子项目 版本集中管理. 统一所有SpringCloud依赖项目的版本依赖--> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-hystrix</artifactId> <version>1.4.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-hystrix-dashboard</artifactId> <version>1.4.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> </dependencies> <build> <plugins> <plugin><!-- SpringBoot 项目打jar包的Maven插件 --> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
2.修改application.yml
server: port: 9005 spring: application: name: hystrix-dasboard #服务注册到Eureka上使用的名称 eureka: client: service-url: # 集群情况下如下,如果是单机版,只需要配置单机版Eureka地址 defaultZone: http://localhost:7001/eureka/,http://localhost:7002/eureka/ instance: instance-id: hystrix-dasboard-9005 prefer-ip-address: true #访问路径显示IP地址 info: # 在Eureka上点击服务时会跳转到个404页面,可配置这里让他跳转到服务简介的一个页面,信息如下配置 app.name: wuzz company.name: www.wuzz.com build.artifactId: hystrix-dasboard build.version: 1.0
3.修改启动类
@SpringBootApplication @EnableHystrixDashboard //开启仪表盘图形化监控的注解 public class HystrixDasboardApp { private final static Logger log = LoggerFactory.getLogger(HystrixDasboardApp.class); public static void main(String[] args) { SpringApplication.run(HystrixDasboardApp.class,args); log.info("服务启动成功"); } }
4.启动本微服务 访问路径为 http://localhost:9005/hystrix,看到以下界面,说明仪表盘配置成功
5.接着启动几个Eureka集群,携带有Hystrix(监控)服务熔断的微服务服务提供者。我这里端口为 8003 ,当我们访问http://localhost:8003/actuator/hystrix.stream 会出现以下界面,
如果是一直处于ping:的状态,是因为没有服务调用,写一个测试接口访问一下会出现以下类似信息
如上图,即服务监控的输出信息,但是我们需要以一种可视化界面的方式去浏览。接下去我们需要配置一下基本信息,以查看可视化的界面
点击 Monitor Stream 会进入以下界面
实心圆:共有两种含义,他通过颜色的变化代表了实例的健康程度,它的健康程度从绿<黄<橙<红递减,该实心圆除了颜色的变化之外,它的大小也会根据实例的请求流量发生变化。流量越大该实心圆就越大。所以通过该实心圆,就可以在大量的实例中快速发现故障实例和高压力实例
对于可视化监控界面(上图) 7 色 1 圈 1 线的含义如下图:
至此就配置好了仪表盘供用户查看服务实例的健康状况
spring-cloud-hystrix-dasboard服务调用监控
原文:https://www.cnblogs.com/wuzhenzhao/p/9505873.html