时间:2021-05-19
添加POM依赖:
application.yml中指定监控的HTTP端口(如果不指定,则使用和Server相同的端口);指定去掉某项的检查(比如不监控health.mail):
server: port: 8083management: port: 8083 security: enabled: false #监控和管理端点
端点名 描述 autoconfig 所有自动配置信息( positiveMatches :运行的, negativeMatches 未运行组件) auditevents 审计事件 beans 所有Bean的信息 configprops 所有配置属性 dump 线程状态信息 env 当前环境信息 health 应用健康状况 info 当前应用信息 metrics 应用的各项指标 mappings 应用@RequestMapping映射路径 shutdown 关闭当前应用(默认关闭) trace 追踪信息(最新的http请求) heapdump 下载内存快照
http://localhost:8083/info 读取配置文件application.properties的 info.*属性
在InfoProperties 读取
application.properties :
info.app.version=v1.2.0info.app.name=abc在GitProperties 获取git.properties 的信息
info.app.version=v1.2.0info.app.name=abc#远程关闭开启endpoints.shutdown.enabled=true #访问:http://localhost:8083/shutdown 关闭服务metrics
{mem: 573549, //内存大小mem.free: 388198, //内存剩余大小processors: 4, //处理器数量instance.uptime: 338426,uptime: 345091,systemload.average: -1,heap.committed: 489984,heap.init: 131072,heap.used: 101785,heap: 1842688,nonheap.committed: 85056,nonheap.init: 2496,nonheap.used: 83566,nonheap: 0,threads.peak: 46,threads.daemon: 36,threads.totalStarted: 72,threads: 39, //线程classes: 12109,classes.loaded: 12109, //加载的类classes.unloaded: 0, //没加载的类gc.ps_scavenge.count: 10,gc.ps_scavenge.time: 103,gc.ps_marksweep.count: 3,gc.ps_marksweep.time: 219,httpsessions.max: -1,httpsessions.active: 0,gauge.response.mappings: 3,gauge.response.autoconfig: 4,gauge.response.trace: 167,counter.status.200.mappings: 1,counter.status.200.autoconfig: 2,counter.status.200.trace: 1}自定义配置说明:
org.springframework.boot.actuate.health 包下对于所有的健康状态检查例如:RedisHealthIndicator ,当有redis的starter 时候就会检查
{ status: "DOWN", //状态 diskSpace: { status: "UP", total: 395243941888, free: 367246643200, threshold: 10485760 }, rabbit: { status: "DOWN", error: "org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection refused: connect" }, redis: { status: "UP", version: "4.0.9" }, db: { status: "UP", database: "MySQL", hello: 1 }}自定义health
•自定义健康状态指示器
•1、编写一个指示器 实现 HealthIndicator 接口
•2、指示器的名字 xxxxHealthIndicator
•3、加入容器中
import org.springframework.boot.actuate.health.Health;import org.springframework.boot.actuate.health.HealthIndicator;import org.springframework.stereotype.Component;@Componentpublic class MyAppHealthIndicator implements HealthIndicator { @Override public Health health() { //自定义的检查方法 //Health.up().build()代表健康 return Health.down().withDetail("msg","服务异常").build(); }}总结
以上所述是小编给大家介绍的spring boot starter actuator(健康监控)配置和使用教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
概述SpringBoot监控核心是spring-boot-starter-actuator依赖,增加依赖后,SpringBoot会默认配置一些通用的监控,比如j
基础依赖compile('org.springframework.boot:spring-boot-starter-actuator')compile('org
在生产环境中,需要实时或定期监控服务的可用性。spring-boot的actuator(监控)功能提供了很多监控所需的接口。简单的配置和使用如下:1、引入依赖:
一)spring-boot-starter命名规则自动配置模块命名规则:xxx-spring-boot,如:aspectlog-spring-boot启动器命名
前言spring-boot-actuator是一个spring-boot提供的用于监控组件,只需要在代码中加入依赖就可以了org.springframework