Hystrix的使用5监控页面dashboard

编程

Hystrix的使用5-监控页面dashboard

1.简介

Hystrix仪表板可以实时监视Hystrix指标。可以查看Hystrix服务是否处于熔断状态等等。

2.代码实现

2.1 被监控工程代码增加代码

这里我们监控cloud-provider-payment-hystrix8001服务提供者类,需要在服务提供者启动类PaymentHystrixStart8001中加入以下方法,将监控地址修改http://127.0.0.1:8001/hystrix.stream 。

    /**

* 给Hystrix Dashboard指定当前工程的监控路径为:http://127.0.0.1:8001/hystrix.stream

* @return

*/

@Bean

public ServletRegistrationBean getServlet(){

HystrixMetricsStreamServlet streamServlet = new HystrixMetricsStreamServlet();

ServletRegistrationBean registrationBean = new ServletRegistrationBean(streamServlet);

registrationBean.setLoadOnStartup(1);

registrationBean.addUrlMappings("/hystrix.stream");

registrationBean.setName("HystrixMetricsStreamServlet");

return registrationBean;

}

2.2 监控工程cloud-consumer-hystrix-dashboard9001

2.2.1 监控工程POM文件

    <dependencies>

<!--新增hystrix dashboard-->

<dependency>

<groupId>org.springframework.cloud</groupId>

<artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-actuator</artifactId>

</dependency>

<dependency>

<groupId>org.projectlombok</groupId>

<artifactId>lombok</artifactId>

<optional>true</optional>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-test</artifactId>

<scope>test</scope>

</dependency>

</dependencies>

2.2.2 监控工程application.yml

server:

port: 9001

2.2.3 监控工程启动类

使用@EnableHystrixDashboard注解开启监控。

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard;

/**监控工程启动类

*/

@SpringBootApplication

@EnableHystrixDashboard // 开启dashboard,通过图形化的方式监控: 查看 http://127.0.0.1:9001/hystrix

public class HystrixDashboardMain9001 {

public static void main(String[] args)

{

SpringApplication.run(HystrixDashboardMain9001.class, args);

}

}

2.2.4 测试

我们是在Hystrix的使用3-服务熔断Circuit Breaker的基础上进行的测试。请先启动Eureka、服务提供者。

2.2.4.1 dashboard页面

浏览器访问 http://127.0.0.1:9001/hystrix 进入配置页面。


进入监控页面:


我们可以看到监控页面的各个接口的访问数据。是否处于熔断,调用成功率,调用耗时等等。

2.2.4.2 dashboard页面查看熔断

我们可以看到,开始的时候使用id<0(接口会超时)去调用getPaymentBreak接口断路器处于关闭状态,调用熔断方法10次后(错误率100%),断路器处于打开状态,然后10秒后,再次使用id>=0(接口正常)去调用getPaymentBreak接口,断路器恢复关闭状态。

3.代码请见

https://github.com/ainydexiaohai/cloud2020

4.参考文章

  • 尚硅谷SpringCloud培训课程
  • hystrix-dashboard官网

以上是 Hystrix的使用5监控页面dashboard 的全部内容, 来源链接: utcz.com/z/518490.html

回到顶部