通过Micrometer获取运行时数据
收集度量指标micrometer,提供了探针客户端instrumentation clients,看成是度量的门面,和底层使用的监控系统monitor system无关
特性
- 多维度度量——支持tag,tag非常重要
- 预置大量探针——缓存、classloader、GC、cpu利用率、线程池
- 与spring深度整合,可以集成spring mvc、restTemplate和webclient等
支持的监控系统
- 多维的——Prometheus/Influx,在有维度的监控系统中,tag非常重要
- 层次的——JMX
一些核心度量指标
核心接口:Meter
内置实现:
- Gauge/TimeGauge cpu使用率
- Timer/LongTaskTimer/FunctionTimer 计时器
- Counter/FunctionCounter 计数器
- DistributionSummary 分布统计
MicroMeter in Spring Boot 2.x
一些URL:
/actuator/metrics
/actuator/prometheus
对http请求的统计 /actuator/metrics/http.server.requests
一些配置项
实例

优化:集中展示应用程序Actuator相关的内容
**第三方Spring Boot Admin **
可以为Spring Boot应用程序提供一套管理界面,不用每次通过url访问,还可以变更通知,通过弹窗等形式提醒
/instances是客户端向服务端注册实例信息的url
/actuator/**是客户端监控自己状态
服务端
- spring-boot-admin-starter-server
- spring-boot-starter-web
- @EnableAdminServer
客户端
- spring-boot-admin-starter-client
- spring-boot-starter-web
- spring-boot-starter-actuator
- 配置服务端和Endpoint
- spring.boot.admin.client.url=http://localhost:8080
- management.endpoints.web.exposure.include=*
安全控制SBA+Spring security
- spring-boot-starter-security
- 服务端配置
- spring.security.user.name
- spring.security.user.password


- 客户端配置
//指定客户端连接服务端,即访问server时用到的url的用户名和密码- spring.boot.admin.client.username
- spring.boot.admin.client.password
//instance的用户名/密码,连接自身actuator endpoint - spring.boot.admin.client.instance.metadata.user.name
- spring.boot.admin.client.instance.metadata.user.password
