共计 1801 个字符,预计需要花费 5 分钟才能阅读完成。
1、用 Turbine 聚合监控数据
Hystrix Dashboard 实现了数据监控,但是只能看到单个应用内的服务信息,Netflix 提供了 Turbine,可以把多个 ”hystrix.stream” 的内容聚合为一个数据源供 Dashboard 展示。
1.1、添加依赖并启用支持
1.1.1、创建多个 ” 服务提供者 ”
复制项目,修改应用名称和端口号
1.1.2、创建多个 ” 服务消费者 ”
复制 Feign 项目,修改应用名称和端口号
1.1.3、创建 Turbine 工程
1、添加 Turbine 依赖
<dependency> | |
<groupId>org.springframework.cloud</groupId> | |
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> | |
</dependency> | |
<!--Hystrix 的依赖 --> | |
<dependency> | |
<groupId>org.springframework.cloud</groupId> | |
<artifactId>spring-cloud-starter-hystrix-dashboard</artifactId> | |
<version>1.2.6.RELEASE</version> | |
</dependency> | |
<!--Actuator 依赖 --> | |
<dependency> | |
<groupId>org.springframework.boot</groupId> | |
<artifactId>spring-boot-starter-actuator</artifactId> | |
</dependency> | |
<!--Hystrix 依赖 --> | |
<dependency> | |
<groupId>org.springframework.cloud</groupId> | |
<artifactId>spring-cloud-starter-netflix-hystrix</artifactId> | |
</dependency> | |
<!--Turbine 依赖 --> | |
<dependency> | |
<groupId>org.springframework.cloud</groupId> | |
<artifactId>spring-cloud-netflix-turbine</artifactId> | |
</dependency> |
2、配置 Turbine 支持
在启动类上添加注解 @EnableTurbine,以激活 Turbine 的支持。
@SpringBootApplication | |
@EnableDiscoveryClient | |
@EnableCircuitBreaker // 开启熔断器 | |
@EnableHystrixDashboard | |
@EnableTurbine // 开启 Turbine | |
public class HystrixSpringcloudApplication {public static void main(String[] args) {SpringApplication.run(HystrixSpringcloudApplication.class, args); | |
} | |
} |
3、配置多个监控
spring.application.name=turbine | |
server.port=50009 | |
eureka.client.fetch-registry=true | |
eureka.client.register-with-eureka=true | |
eureka.client.service-url.defaultZone=http://eureka01:50001/eureka/,http://eureka02:50002//eureka/ | |
#开启支持 | |
feign.hystrix.enabled=true | |
#配置 "服务中心" 的 serviceid 列表,表明监控哪个 dashboard | |
turbine.app-config=hystrix1,hystrix2 | |
#集群名称表达式, 默认为应用名 | |
turbine.cluster-name-expression=new String("default") |
4、启动 ” 服务提供者 ” 和 ” 服务消费者 ”
5、测试 Turbin 聚合监控
-
输入 http://localhost:50009/hystrix
-
再输入 http://localhost:50009/turbine.stream 点击 Monitor Stream
正文完
星哥玩云-微信公众号
