SpringCloud - dashboard单机监控(仪表盘)

在微服务架构中,Hystrix 除了实现容错外,还提供了实时监控功能。
在服务调用时,Hystrix 会实时累积关于 HystrixCommand 的执行信息,比如每秒的请求数、成功数等。

Hystrix 监控需要两个必备条件:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>

访问:
http://localhost:port/actuator/hystrix.stream

在这里插入图片描述
我们已经知道 Hystrix 提供了监控的功能,可以通过 hystrix.stream 端点来获取监控数据,
但是这些数据是以字符串的形式展现的,实际使用中不方便查看。
我们可以借助 Hystrix Dashboard 对监控进行图形化展示。

实现健康监测

pom.xml

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
</dependency>

application.yml

//开启了所有健康监测的访问接口,默认只开启了health和info,也开启了hystrix的仪表盘访问
management:
  endpoints:
    web:
      exposure:
        include: '*'

启动类

@EnableHystrix
@EnableHystrixDashboard

访问:
http://localhost:56712/hystrix

SpringCloud - dashboard单机监控(仪表盘)_第1张图片
地址: 监控哪个服务
delay : 多少毫秒刷新监测
title: 监测名称(随意)

解读

SpringCloud - dashboard单机监控(仪表盘)_第2张图片
第一列 针对的是request
第一个绿色的数字,代表成功访问请求的数量,对应横向的绿色Success。
第二个蓝色的数字,代表发生断路的次数: 对应横向的蓝色Short-Circuited
第三个青色的数字,代表错误请求的数量 对应横向的青色Bad Request
第二列 针对的是response
第一个橙色的数字,代表超时访问的数量 对应横向的橙色TimeOut
第二个紫色的数字,代表拒绝访问的数量 对应横向的紫色Rejected
第三个红色的数字,代表失败的服务数量 对应横向的红色Failed
重要: Circuit 代表熔断器是否打开 open/close

可以使用postman来测试

localhost:56700/teacher/login

{
	"username":"test01",
	"password":"123"
}

localhost:56700/teacher/profile
headers
token : Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMTY1OTExMzQzNTcyNzY2NzIyIiwic3ViIjoi5byg5LiJIiwiaWF0IjoxNTY5OTEyODY5LCJhcGlzIjoiQVBJLVNUVURFTlQtRVhBTS1MSVNULCIsIm5pY2tOYW1lIjoi5byg5LiJIiwidXNlcklkIjoiMTE2NTkxMTM0MzU3Mjc2NjcyMiIsImV4cCI6MTU2OTkxNjQ2OX0.gOn3o66jh09LWmGxBRz1yF06wnDZ6k0PPxliJeZxnMA

localhost:56700/student/exam/getAnswerQuestionStudentList

headers
token : Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMTY1OTExMzQzNTcyNzY2NzIyIiwic3ViIjoi5byg5LiJIiwiaWF0IjoxNTY5OTEyODY5LCJhcGlzIjoiQVBJLVNUVURFTlQtRVhBTS1MSVNULCIsIm5pY2tOYW1lIjoi5byg5LiJIiwidXNlcklkIjoiMTE2NTkxMTM0MzU3Mjc2NjcyMiIsImV4cCI6MTU2OTkxNjQ2OX0.gOn3o66jh09LWmGxBRz1yF06wnDZ6k0PPxliJeZxnMA

body:

{
	"askCount": null,
	"askJoins": null,
	"askScore": null,
	"chapterIds": "1166263291698312169",
	"chapterIdsArray": null,
	"classId": "1165965535742021634",
	"className": "Y2T11班",
	"examName": "1111111",
	"examStatus": "4",
	"examTime": "2019-09-02T16:00:00.000+0000",
	"examTimeLength": 124,
	"examType": "1",
	"id": "1177847561151582210",
	"modifyName": "",
	"modifyTime": "2019-09-28T09:23:53.000+0000",
	"mutipleCount": 5,
	"mutipleJoins": "1173975195879292929,1173974582034513921,1173973956240162817,1173973119703007234,1173974376522006529",
	"mutipleScore": 10,
	"personNumber": 2,
	"questionTypeIds": "1,2",
	"questionTypeIdsArray": null,
	"singleCount": 5,
	"singleJoins": "1173971848543682561,1173786581987823618,1173972453286821890,1173971944765210625,1177772963345207298",
	"singleScore": 10	
}    

你可能感兴趣的:(Spring,Cloud)