SpringCloud Hystrix dashboard2.2.7使用和配置,SpringCloud Hystrix dashboard服务监控
Unable to connect to Command Metric Stream.解决方案
================================
©Copyright 蕃薯耀 2021-03-15
http://fanshuyao.iteye.com/
一、SpringCloud Hystrix使用和配置
SpringCloud Hystrix使用和配置,见:
https://www.cnblogs.com/fanshuyao/p/14537475.html
项目:
服务消费者:springCloud-hystrix-web-8655
服务监控:springCloud-hystrix-dashboard-8656
二、SpringCloud Hystrix dashboard使用和配置(服务监控:springCloud-hystrix-dashboard-8656)
1、pom.xml引入依赖
引入:spring-cloud-starter-netflix-hystrix-dashboard、spring-boot-starter-actuator
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId> <version>2.2.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
2、application.properties配置文件修改
#监控访问地址:http://127.0.0.1:8656/hystrix #要监控的地址:http://127.0.0.1:8655/actuator/hystrix.stream server.port=8656 #必须要配置hystrix.dashboard.proxy-stream-allow-list,不然进入监听页面,会报错:Unable to connect to Command Metric Stream. #控制台输出:ashboardConfiguration$ProxyStreamServlet : Origin parameter: http://127.0.0.1:8655/actuator/hystrix.stream is not in the allowed list of proxy host names. If it should be allowed add it to hystrix.dashboard.proxyStreamAllowList. #配置的访问列表的地址,必须一一对应: #如使用:http://127.0.0.1:8655/actuator/hystrix.stream访问,就配置hystrix.dashboard.proxy-stream-allow-list=127.0.0.1 #如使用:http://localhost:8655/actuator/hystrix.stream访问,就配置hystrix.dashboard.proxy-stream-allow-list=localhost #不然会出现:Unable to connect to Command Metric Stream. hystrix.dashboard.proxy-stream-allow-list=127.0.0.1
3、启动类
@EnableHystrixDashboard:启动监控
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard; @SpringBootApplication @EnableHystrixDashboard public class SpringCloudHystrixDashboard8656Application { public static void main(String[] args) { SpringApplication.run(SpringCloudHystrixDashboard8656Application.class, args); } }
三、服务消费者:springCloud-hystrix-web-8655,修改监控配置
1、pom.xml引入依赖,actuator不能少
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-hystrix</artifactId> <version>2.2.7.RELEASE</version> </dependency>
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency>
2、application.properties配置文件修改
#熔断监控暴露的接口,或者使用 #使用*表示全部 #management.endpoints.web.exposure.include=* management.endpoints.web.exposure.include=hystrix.stream,info,health
3、启动类
加上@EnableHystrix,或者@EnableCircuitBreaker,而@EnableHystrix继承于@EnableCircuitBreaker
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; import org.springframework.cloud.netflix.hystrix.EnableHystrix; import org.springframework.cloud.openfeign.EnableFeignClients; @SpringBootApplication @EnableFeignClients @EnableEurekaClient @EnableHystrix public class SpringCloudHystrixWeb8655Application { public static void main(String[] args) { SpringApplication.run(SpringCloudHystrixWeb8655Application.class, args); } }
四、启动测试
启动服务消费者和服务监控
1、在浏览器输入地址:
http://127.0.0.1:8656/hystrix
2、在输入框输入监控的地址(服务消费者的监控地址):
这里的地址是有/actuator的,有些版本是没有这个的。
http://127.0.0.1:8655/actuator/hystrix.stream
听说这样能把/actuator去掉(未验证):
#修改base-path,默认是/actuator #private String basePath = "/actuator"; management.endpoints.web.base-path=/
3、Delay和title自己定义就好
4、点击Monitor Stream按钮进入监控页面,然后调用服务消费者的接口产生服务调用数据
5、当一个服务请求不断发生错误,如10秒中产生20次请求,且请求失败率达到50%以上,此服务就会发生熔断(仅是单个服务,其它服务不影响)
五、注意事项
1、Unable to connect to Command Metric Stream.
问题原因是:
ashboardConfiguration$ProxyStreamServlet : Origin parameter: http://127.0.0.1:8655/actuator/hystrix.stream is not in the allowed list of proxy host names. If it should be allowed add it to hystrix.dashboard.proxyStreamAllowList.
翻译:ashboardConfiguration $ ProxyStreamServlet:原始参数:http://127.0.0.1:8655/actuator/hystrix.stream不在代理主机名的允许列表中。 如果应允许将其添加到hystrix.dashboard.proxyStreamAllowList。
就是要配置:hystrix.dashboard.proxy-stream-allow-list
解决方法是:
在服务监控:springCloud-hystrix-dashboard-8656项目的application.properties增加:hystrix.dashboard.proxy-stream-allow-list
#配置的访问列表的地址,必须一一对应: #如使用:http://127.0.0.1:8655/actuator/hystrix.stream访问,就配置hystrix.dashboard.proxy-stream-allow-list=127.0.0.1 #如使用:http://localhost:8655/actuator/hystrix.stream访问,就配置hystrix.dashboard.proxy-stream-allow-list=localhost #不然会出现:Unable to connect to Command Metric Stream.
hystrix.dashboard.proxy-stream-allow-list=127.0.0.1
(如果文章对您有所帮助,欢迎捐赠,^_^)
================================
©Copyright 蕃薯耀 2021-03-15
http://fanshuyao.iteye.com/
相关推荐
5. **启用监控**:引入 Hystrix Dashboard 和 Turbine,配置监控端点,并在浏览器中访问监控界面查看服务状态。 在 `SpringCloudDemo-Hystrix` 压缩包中,通常包含了示例代码,演示了如何在 Spring Boot 应用中配置...
其核心目标是通过添加一个延迟容忍层来隔离各个微服务之间的交互,进而避免级联失败和服务雪崩效应。 Hystrix为解决的问题主要体现在如下几个方面: 1. 服务隔离:在微服务架构中,每个服务往往依赖于其它多个服务...
以上是关于 Spring Cloud Hystrix 及其 Dashboard 的源码解读,深入理解这些核心组件和机制对于开发者来说是非常有价值的。这不仅能帮助我们更好地利用 Hystrix 来实现服务间的容错机制,还能在实际应用中更好地进行...
Spring Cloud Hystrix是Spring Cloud生态中的一个关键组件,它主要负责实现服务容错和断路器模式,以提升分布式系统中的稳定性和弹性。在基于Spring Cloud构建的应用中,Hystrix能帮助我们构建出更加健壮的服务架构...
springcloud hystrix jar包,java -jar xx.jar,小熊界面
Hystrix是Netflix开源的一个库,它为分布式系统提供了延迟和容错的基础设施,而Spring Cloud则为开发Spring应用提供了一整套工具,帮助快速构建一些常见的模式,如配置管理、服务发现、断路器等。 首先,让我们理解...
【SpringCloud Hystrix服务熔断】是Spring Cloud生态中的一种关键组件,它引入了断路器模式,用于处理微服务架构中可能出现的雪崩效应。断路器模式的核心思想是在服务之间设置“保险丝”,当某个服务出现故障时,...
本教程将通过分析`microservice-hystrix-dashboard`、`microservice-client`和`microservice-springcloud`这三个项目来深入理解Spring Cloud Hystrix的使用。 首先,`microservice-hystrix-dashboard`是Hystrix的...
综合这些信息,我们可以了解到这个示例项目展示了如何在Spring Cloud环境中构建微服务架构,使用Eureka进行服务注册和发现,使用Feign进行服务间的通信,并通过Hystrix实现容错和监控。Hystrix Dashboard的集成使得...
2. **Turbine 配置**: 配置 Turbine 应指定如何发现服务实例,通常使用 Eureka 或者 Spring Cloud Config 来动态获取服务列表。 3. **动态聚合**: Turbine 支持动态聚合,这意味着当新的服务实例加入或离开时,无需...
spring-cloud-hystrix-dashboard(包含注册中心、member、hystrix-dashboard配置等).zip 包含配置好的eureka注册中心,member服务生产者、hystrix-dashboard的hystrix配置和仪表盘配置
SpringCloud Hystrix-Dashboard 仪表盘是 SpringCloud 中的一种监控工具,它可以实时监控 Hystrix 的各项指标信息。通过 Hystrix Dashboard 反馈的实时信息,可以帮助我们快速发现系统中存在的问题。 Hystrix ...
Spring Cloud Hystrix 与其他 Spring Cloud 组件良好集成,如 Eureka(服务发现)、Zuul(API 网关)等,使得在微服务架构中部署和管理 Hystrix 更加方便。 总结来说,Spring Cloud Hystrix 通过断路器、线路隔离、...
Spring Cloud Netfix Hystrix断路器例子工程。使用Spring Cloud Netflix Hystrix以及Spring RestTemplate或Spring Cloud Netflix Feign实现断路器模式。
2. 配置`application.yml`,声明服务提供者的应用名和服务发现的相关配置,以及Hystrix的默认配置,如超时时间、断路器的阈值等。 3. 使用`@EnableCircuitBreaker`注解启用Hystrix的断路器功能。 4. 在服务消费者端...
在Spring Cloud生态系统中,Hystrix是一个至关重要的组件,它主要负责实现服务容错和断路器模式,以增强系统的稳定性和健壮性。本文将深入探讨如何在Spring Cloud项目中集成并使用Hystrix,以及如何将其与Feign...
其中,Hystrix 熔断、限流和后台调用是 Spring Cloud Gateway 的三个关键组件,本文将详细介绍如何配置这些组件以确保系统的高可用性和可靠性。 Hystrix 熔断 Hystrix 是一个由 Netflix 开源的断路器组件,用于...
SpringCloud是微服务架构中的一个核心组件集合,它提供了丰富的工具和服务来构建大规模分布式系统。在SpringCloud的生态系统中,Dashboard服务监控是一个重要的组成部分,它允许开发者和运维人员实时查看和管理他们...
Hystrix 和 Hystrix Dashboard 是 SpringCloud 中的两个组件,分别用于熔断监控和实时监控。 知识点四:Maven 依赖管理 Maven 是一个项目管理工具,可以帮助开发者快速构建项目。Maven 依赖管理可以帮助开发者快速...
springcloud hystrix-dashboard