Hystrix Dashboard

简介: Hystrix Dashboard是一个通过收集actuator端点提供的Hystrix流数据,并将其图表化的客户端。如果需要通过图表化的界面查看被断路器保护的方法相关调用信息、或者实时监控这些被断路器保护的应用的健康情况,就可以使用Hystrix Dashboard。

1、简介

Hystrix Dashboard是一个通过收集actuator端点提供的Hystrix流数据,并将其图表化的客户端。如果需要通过图表化的界面查看被断路器保护的方法相关调用信息、或者实时监控这些被断路器保护的应用的健康情况,就可以使用Hystrix Dashboard。

2、正文

2.1  启动Hystrix Dashboard

创建一个Spring Boot项目添加Hystrix Dashboard 依赖

<dependency>

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

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

</dependency>

在启动类上使用@EnableHystrixDashboard注解来启动Hystrix Dashboard

@SpringBootApplication

@EnableHystrixDashboard

public class Application {


   public static void main(String[] args) {

       SpringApplication.run(Application.class, args);

   }

}

指定Hystrix Dashboard服务启动端口

server:

 port: 17777

启动服务,访问/hystrix端点,看到如下界面则证明Hystrix Dashboard启动成功


2.2 启用Actuator端点

Hystrix Dashboard是通过实时获取Actuator端点提供的Hystrix流来实时监控这些被断路器保护的应用的健康情况;因此在这些被断路器保护的应用中需要开启Hystrix流的Actuator端点(注意:如下所有配置都是在已经集成了Hystrix的服务中进行的相关操作)。

引入actuator依赖

<!--actuator 依赖-->

<dependency>

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

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

</dependency>

暴露hystrix端点

# 暴露hystrix端点

management:

 endpoints:

   web:

     exposure:

       include: 'hystrix.stream'

在Hystrix Dashboard中输入服务暴露的hystrix流地址http://localhost:18888/actuator/hystrix.stream

点击Monitor Stream之后进入的初始界面如下所示(如果没出现页面,只是显示loading,那就说明断路器方法未被调用,只需向断路器方法发送一次请求即可):

2.3 Hystrix Dashboard面板参数介绍

Hystrix Dashboard面板可分上下两部分来查询,上面部分是断路器方法调用的相关信息,Circuit,下面部分是Hystrix为断路器方法提供的线程池相关信息,Thread Pools

Circuit:

Circuit这里展示的当前方法的相对信息,如果有多个方法被断路器保护,那么这里将会依此展示多个方法的相关信息。

在图表中,左上角的圆圈代表了该方法的流量和状态:

  • 圆圈越大代表方法流量越大
  • 圆圈为绿色代表断路器健康、黄色代表断路器偶发故障、红色代表断路器故障

右上角的计数器(三列数字):

第一列从上到下

  • 绿色代表当前成功调用的数量
  • 蓝色代表短路请求的数量
  • 蓝绿色代表错误请求的数量

第二列从上到下

  • 黄色代表超时请求的数量
  • 紫色代表线程池拒绝的数量
  • 红色代表失败请求的数量

第三列

  • 过去10s的错误请求百分比

Thread Pools:

Hystrix会针对一个受保护的类创建一个对应的线程池,这样做的目的是Hystrix的命令被调用的时候,不会受方法请求线程的影响(或者说Hystrix的工作线程和调用者线程相互之间不影响)

在图表中,左上角的圆圈代表了该线程池的流量和状态:

  • 圆圈越大代表线程池越活越,流量越大
  • 圆圈颜色代表的是线程池的健康状况

左下角从上至下:

  • Active代表线程池中活跃线程的数量
  • Queued代表排队的线程数量,该功能默认禁止,因此默认情况下始终为0
  • Pool Size代表线程池中线程的数量(上面图我搞错了,困得死MMP

右下角从上至下:

  • Max Active代表最大活跃线程,这里展示的数据是当前采用周期中,活跃线程的最大值
  • Execcutions代表线程池中线程被调用执行Hystrix命令的次数
  • Queue Size代表线程池队列的大小,默认禁用,无意义
目录
相关文章
|
监控 Java Spring
Hystrix Dashboard使用及面板参数详述
Hystrix Dashboard使用及面板参数详述
626 0
Hystrix Dashboard使用及面板参数详述
|
监控 Java API
Spring cloud Hystrix 、Dashboard、API(zuul)相关报错
Spring cloud Hystrix 、Dashboard、API(zuul)相关报错
349 2
|
Java Maven
从零学SpringCloud系列(五):SpringBoot2.2.5集成Hystrix Dashboard及遇到的坑
从零学SpringCloud系列(五):SpringBoot2.2.5集成Hystrix Dashboard及遇到的坑
386 0
从零学SpringCloud系列(五):SpringBoot2.2.5集成Hystrix Dashboard及遇到的坑
hystrix.stream dashboard
hystrix.stream dashboard
179 3
|
监控 数据可视化 Java
手把手教你搭建SpringCloud项目(十二 )集成Hystrix之图形化Dashboard实时监控
手把手教你搭建SpringCloud项目(十二 )集成Hystrix之图形化Dashboard实时监控
397 1
|
监控 Java 微服务
16SpringCloud - 断路器项目示例(Hystrix Dashboard)
16SpringCloud - 断路器项目示例(Hystrix Dashboard)
190 0
|
监控 数据可视化 Java
SpringCloud学习(十五):Hystrix图形化Dashboard搭建与实战
SpringCloud学习(十五):Hystrix图形化Dashboard搭建与实战
471 0
SpringCloud学习(十五):Hystrix图形化Dashboard搭建与实战
|
监控 Java 微服务
SpringCloud极简入门-服务监控-Hystrix Dashboard & Turbine
Hystrix是一种服务熔断机制,其熔断降级策略有效的防止了微服务的雪崩问题,Hystrix的出现提高了微服务的可用性和健壮性,而Hystrix Dashboard则是用来监控Hystrix的熔断器状况的重要组件(又叫仪表盘),它提供了数据监控,健康状态,熔断状态,并发数量等等信息,和友好的图形化展示界面,能让使用者很好的监控和分析熔断器的状态。
738 0
|
监控 数据可视化 Java
SpringCloud之服务监控Hystrix Dashboard
SpringCloud之服务监控Hystrix Dashboard
SpringCloud之服务监控Hystrix Dashboard
|
监控 数据可视化 Java
Spring Cloud【Finchley】-12使用Hystrix Dashboard实现Hystrix数据的可视化监控
Spring Cloud【Finchley】-12使用Hystrix Dashboard实现Hystrix数据的可视化监控
341 0