1. 程式人生 > >微服務springcloud—使用Hystrix Dashboard視覺化監控資料

微服務springcloud—使用Hystrix Dashboard視覺化監控資料

使用Hystrix Dashboard視覺化監控資料

前面討論了Hystrix的監控,但訪問/actuator/hystrix.stream端點獲得的資料都是以文字形式展示的。很難通過這些資料,一眼看出系統的執行狀態。
可使用Hystrix Dashboard,從讓監控資料圖形化、視覺化。

1.建立一個Maven專案,ArtifactId是microservice-hystrix-dashboard,並新增以下依賴。

		<dependency>
            <groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-hystrix-dashboard</artifactId> <version>1.4.6.RELEASE</version> </dependency>

2.編寫啟動類,在其動力上新增@EnableHystrixDashboard。

@SpringBootApplication
@EnableHystrixDashboard
public class HystrixDashboardApplication {
    @Bean(name="hystrixRegistrationBean")
    public ServletRegistrationBean getServlet() {
        HystrixMetricsStreamServlet streamServlet = new HystrixMetricsStreamServlet();
        ServletRegistrationBean registrationBean = new ServletRegistrationBean(streamServlet);
        registrationBean.setLoadOnStartup(1);
        registrationBean.addUrlMappings("/hystrix.stream");
        registrationBean.setName("HystrixMetricsStreamServlet");
        return registrationBean;
    }


    public static void main(String[] args) {
        SpringApplication.run(HystrixDashboardApplication.class, args);
    }
}

2.0以上版本的spring要加getServlet方法,具體參考連結:
https://blog.csdn.net/ddxd0406/article/details/79643059
https://blog.csdn.net/daihanguang123/article/details/80768221

3.配置檔案application.yml

server:
    port: 8030
spring:
    application:
        name: hystrix
#開啟斷路器功能
feign:
    hystrix:
        enabled: true
management:
    endpoints:
web: exposure: include: hystrix.stream

這樣,一個簡單的Hystrix Dashboard就完成了,有配置可知,我們並沒有把Hystrix Dashboard註冊到Eureka Server上。

4.測試

1.訪問http://localhost:8030/hystrix,可看到Hystrix Dashboard的主頁
在這裡插入圖片描述
2.在上一節測試的基礎上,在URL一欄上輸入http://localhost:8010/actuator/hystrix.stream,隨意設定一個Title,並點選Monitor Stream按鈕後
在這裡插入圖片描述

簡單可見,並沒有把Hystrix Dashboard註冊到Eureka Server上。再生產環境中,也可以把Hystrix Dashboard註冊到Eureka Server上,更方便地管理Hystrix Dashboard。

本文大部分內容轉載自周立的《Spring Cloud與Docker微服務架構實戰》