Spring Cloud引入Turbine监控工具

查看单个微服务的Hystrix Dashboard的数据可以参考上篇文档,如果想看整个系统的Hystrix Dashboard数据就需要用到Hystrix Turbine。Hystrix Turbine将每个服务Hystrix Dashboard数据进行了整合。
本次实验时,仍在cloud注册中心集成Turbine,但发现一直是loading状态。最终将Hystrix Dashboard从注册中心项目中剔除掉,新创建Turbine监控工程,一切正常。
pom.xml 主要内容如下:

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-actuator</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.cloud</groupId>
	<artifactId>spring-cloud-netflix-turbine</artifactId>
</dependency>
<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-starter-turbine</artifactId>
	<version>1.3.1.RELEASE</version>
</dependency>

application.properties

spring.application.name=spring-cloud-turbine
server.port=8001
#配置Eureka中的serviceId列表,表明监控哪些服务
turbine.appConfig=spring-cloud-provider,spring-cloud-consumer
#指定聚合哪些集群,多个使用”,”分割,默认为default
turbine.aggregator.clusterConfig=default
#设置监控的表达式,通过此表达式表示要获取监控信息名称
turbine.clusterNameExpression= new String("default")
#配置该路径,使用HystrixConfig配置类不起作用
turbine.instanceUrlSuffix=/hystrix.stream

eureka.client.serviceUrl.defaultZone=http://localhost:9000/eureka/

TurbineApplication.java

@SpringBootApplication
@EnableHystrixDashboard//启用Hystrix Dashboard
@EnableTurbine//启用Turbine
public class TurbineApplication {
	public static void main(String[] args) {
		SpringApplication.run(TurbineApplication.class, args);
	}
}

测试
注册到eureka中http://cos6743:9000/
eureka
trubine监控,访问http://cos6743:8001/hystrix,可以看到提供者和消费者的服务调用情况
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44153121/article/details/86693000