您的位置:首页 > 编程语言 > Java开发

Spring Cloud学习--容错机制(Hystrix之Turbine集群监控)

2017-10-01 21:33 549 查看

使用Turbine聚合监控数据

除了使用/hystrix.stream端点监控单个微服务实例,可以使用Turbine将所有相关的/hystrix.stream聚合到一个组合的/turbine.stream中。

本文依据Hystrix,可见http://blog.csdn.net/u012482647/article/details/78148447 Spring Cloud学习–容错机制(Hystrix之服务降级)

1.创建一个spring boot项目,添加spring-cloud-starter-turbine依赖。

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-turbine</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>


2.在启动类上添加注解@EnableTurbine

@EnableTurbine
@EnableDiscoveryClient
@SpringBootApplication
public class SpringCloudTurbineApplication {

public static void main(String[] args) {
SpringApplication.run(SpringCloudTurbineApplication.class, args);
}
}


3.配置文件:

spring.applicaton.name=turbine-service

server.port=2002
management.port=8990
eureka.client.serviceUrl.defaultZone=http://localhost:8888/eureka/
##turbine.app-config指定了要收集监控信息的服务名
turbine.app-config=string-service
##turbine.cluster-name-expression 指定集群名称
turbine.cluster-name-expression="default"
##使同一主机上的多个服务实例可以通过主机名和端口号的组合来进行区分
turbine.combine-host-port=true


启动hystrix Dashboard项目,在url一栏中输入:http://localhost:2002/turbine.stream 出现如图界面



二、带你出坑

我在启动Turbine服务时,出现以下错误,导致出现不了如上界面。

com.netflix.turbine.monitor.instance.InstanceMonitor$MisconfiguredHostException: [{"timestamp":1506864554002,"status":404,"error":"Not Found","message":"No message available","path":"/string-service/hystrix.stream"}]
at com.netflix.turbine.monitor.instance.InstanceMonitor.init(InstanceMonitor.java:318) ~[turbine-core-1.0.0.jar:na]
at com.netflix.turbine.monitor.instance.InstanceMonitor.access$100(InstanceMonitor.java:103) ~[turbine-core-1.0.0.jar:na]
at com.netflix.turbine.monitor.instance.InstanceMonitor$2.call(InstanceMonitor.java:235) [turbine-core-1.0.0.jar:na]
at com.netflix.turbine.monitor.instance.InstanceMonitor$2.call(InstanceMonitor.java:229) [turbine-core-1.0.0.jar:na]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_131]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_131]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_131]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_131]


这个问题,待解决后补充。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring-cloud java