在多个微服务的项目中,看单个的Hystrix Dashboard的数据并没有什么多大的价值,要想看这个系统的Hystrix Dashboard数据就需要用到Hystrix Turbine。Hystrix Turbine将每个服务Hystrix Dashboard数据进行了整合。
pom.xml加入依赖
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-netflix-turbine</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-turbine</artifactId>
<version>1.4.7.RELEASE</version>
</dependency>
</dependencies>
application.properties文件为
server.port=9004
spring.application.name=turbine-server
eureka.client.service-url.deaaultZone=http://${eureka.instance.hostname}:8761/eureka/
#数Eureka中的serviceId列表,表明监控哪些服务
turbine.app-config=spring-cloud-client,spring-cloud-server
#指定集合名称,当服务数量非常多的时候,可以启动多个Turbine服务来构建不同的聚合集群
turbine.cluster-name-expression="default"
#turbine.combine-host-port参数设置为true,可以让同一主机上的服务通过主机名与端口号的组合
#来进行区分,默认情况下会以host来区分不同的服务,这会使得在本机调试的时候,本机上的不同服务聚合成一个服务来统计
#turbine.combine-host-port=true
项目结构和启动类如下所示
启动服务。监控地址输入http://localhost:9004/turbine.stream