hystrixDashboard(服務監控)


1、新建項目

microservicecloud-consumer-hystrix-dashboard

2、yml文件

server:
  port: 9001

3、在pom.xml文件增加如下內容

    <dependencies>
        <!-- 自己定義的api -->
        <dependency>
            <groupId>com.yufeng.springcloud</groupId>
            <artifactId>microservicecloud-api</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- 修改后立即生效,熱部署 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>springloaded</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
        </dependency>
        <!-- Ribbon相關 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-eureka</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-ribbon</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-config</artifactId>
        </dependency>
        <!-- feign相關 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-feign</artifactId>
        </dependency>
        <!-- hystrix和 hystrix-dashboard相關 --> <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>
    </dependencies>

4、主啟動類添加EnableHystrixDashboard

@ EnableHystrixDashboard開啟儀表盤監控注解

import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard; @SpringBootApplication @EnableHystrixDashboard public class DeptConsumer_DashBoard_App { public static void main(String[] args) { SpringApplication.run(DeptConsumer_DashBoard_App .class, args); } }

5、微服務提供者添加監控jar

例如:微服務提供者 microservicecloud-provider-dept-8001/8002/8003

pom.xml文件添加以下jar包,才能被dashboard監控

<!-- actuator監控信息完善 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

6、測試

(1)啟動3個 eureka 服務;

(2)啟動新建的監控服務:microservicecloud-consumer-hystrix-dashboard

 

(3)瀏覽器中訪問:http://localhost:9001/hystrix,若顯示如下圖所示,則表示微服務監控服務正常啟動;

 

 


(3)啟動被監控的帶Hystrix的微服務: microservicecloud-provider-dept-hystrix-8001

<1> 在瀏覽器中打開:http://localhost:8001/hystrix.stream (即:http://{hystrix-app}:{port}/hystrix.stream)

 

 

<2> 在9001的監控界面輸入要監控的微服務(http://localhost:8001/hystrix.stream),如下所示:

 

 

 

顯示以下監控內容:

 

 

 

(a)Deplay 該參數用來控制服務器上輪詢監控信息的延遲時間,默認是2000毫秒,可以通過配置該屬性來降低客戶端的網絡和cpu消耗。

(b)Title該參數對應了頭部標題Hystrix Stream之后的內容,默認會使用哦具體監控實例的URL,可疑通過配置該信息來展示更合適的標題。

<4> 在瀏覽器中輸入:http://localhost:8001/dept/get/1,並多次刷新,顯示如下:

 

 

 

實心圓:共有兩種含義。它通過顏色的變化代表了實例的健康程度,它的健康程度從 綠色 > 黃色 > 橙色 > 紅色 遞減;

該實心圓除了顏色的變化之外,它的大小也會根據實例的請求流量發生變化,流量越大實心圓就越大,所以通過該實心圓的展示,就可以在大量實例中快速的發現故障實例和高壓力實例

<5> 說明

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM