欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

springcloud系列九 整合Hystrix Dashboard

发布时间:2025/7/14 编程问答 47 豆豆
生活随笔 收集整理的这篇文章主要介绍了 springcloud系列九 整合Hystrix Dashboard 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

 

Hystrix Dashboard是Hystrix的仪表盘组件,主要用来实时监控Hystrix的各项指标信息,通过界面反馈的信息可以快速发现系统中存在的问题。

整合快速体验:

pom.xml(这个是F系之后的依赖)

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId></dependency>

之前的使用:

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

启动类上加

启动类配置@EnableHystrixDashboard注解

启动类加配置:

package com.cxy;import com.netflix.hystrix.contrib.metrics.eventstream.HystrixMetricsStreamServlet; import com.netflix.loadbalancer.BestAvailableRule; import com.netflix.loadbalancer.IRule; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletRegistrationBean; import org.springframework.cloud.client.circuitbreaker.EnableCircuitBreaker; import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard; import org.springframework.cloud.openfeign.EnableFeignClients; import org.springframework.context.annotation.Bean; import org.springframework.web.client.RestTemplate;/**** @ClassName: PersonApplication* @Description:* @Auther: 陈绪友* @Date: 2019/1/2816:30* @version : V1.0*/ @EnableCircuitBreaker @SpringBootApplication @EnableEurekaClient //开启注解,注册服务 @MapperScan("com.cxy") @EnableFeignClients @EnableHystrixDashboard public class UserApplication {public static void main(String[] args) {SpringApplication.run(UserApplication.class,args);}@Bean// @LoadBalanced //使用负载均衡器Ribbonpublic RestTemplate getRestTemplate(){return new RestTemplate();}/*@Beanpublic IRule myRule(){//return new RoundRobinRule();//轮询// return new RetryRule();//重试return new BestAvailableRule();}*/@Beanpublic ServletRegistrationBean getServlet(){HystrixMetricsStreamServlet streamServlet = new HystrixMetricsStreamServlet();ServletRegistrationBean registrationBean = new ServletRegistrationBean(streamServlet);registrationBean.setLoadOnStartup(1);registrationBean.addUrlMappings("/actuator/hystrix.stream");registrationBean.setName("HystrixMetricsStreamServlet");return registrationBean;} }

http://127.0.0.1:8082/actuator/hystrix.stream  这个路径配置千万不要写localhost

不然控制台报错:

java.net.UnknownHostException: loclahostat java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) ~[na:1.8.0_192]at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:929) ~[na:1.8.0_192]at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1324) ~[na:1.8.0_192]at java.net.InetAddress.getAllByName0(InetAddress.java:1277) ~[na:1.8.0_192]at java.net.InetAddress.getAllByName(InetAddress.java:1193) ~[na:1.8.0_192]at java.net.InetAddress.getAllByName(InetAddress.java:1127) ~[na:1.8.0_192]at org.apache.http.impl.conn.SystemDefaultDnsResolver.resolve(SystemDefaultDnsResolver.java:45) ~[httpclient-4.5.6.jar:4.5.6]at org.apache.http.impl.conn.DefaultClientConnectionOperator.resolveHostname(DefaultClientConnectionOperator.java:263) ~[httpclient-4.5.6.jar:4.5.6]at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:162) ~[httpclient-4.5.6.jar:4.5.6]at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:326) ~[httpclient-4.5.6.jar:4.5.6]at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:610) ~[httpclient-4.5.6.jar:4.5.6]at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:445) ~[httpclient-4.5.6.jar:4.5.6]at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:835) ~[httpclient-4.5.6.jar:4.5.6]at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83) ~[httpclient-4.5.6.jar:4.5.6]at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108) ~[httpclient-4.5.6.jar:4.5.6]at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56) ~[httpclient-4.5.6.jar:4.5.6]at org.springframework.cloud.netflix.hystrix.dashboard.HystrixDashboardConfiguration$ProxyStreamServlet.doGet(HystrixDashboardConfiguration.java:177) ~[spring-cloud-netflix-hystrix-dashboard-2.1.0.RELEASE.jar:2.1.0.RELEASE]at javax.servlet.http.HttpServlet.service(HttpServlet.java:634) [tomcat-embed-core-9.0.14.jar:9.0.14]

点击mointor

 

转载于:https://www.cnblogs.com/xiufengchen/p/10333274.html

总结

以上是生活随笔为你收集整理的springcloud系列九 整合Hystrix Dashboard的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。