springcloud系列九 整合Hystrix Dashboard
生活随笔
收集整理的这篇文章主要介绍了
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的全部内容,希望文章能够帮你解决所遇到的问题。