spring boot starter actuator(健康监控)配置和使用教程
时间:2019-04-20
本文章向大家介绍spring boot starter actuator(健康监控)配置和使用教程,主要包括spring boot starter actuator(健康监控)配置和使用教程使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
添加POM依赖:
<!-- spring-boot-监控--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
application.yml中指定监控的HTTP端口(如果不指定,则使用和Server相同的端口);指定去掉某项的检查(比如不监控health.mail):
server: port: 8083 management: 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.0 info.app.name=abc
在GitProperties 获取git.properties 的信息
info.app.version=v1.2.0 info.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 }
自定义配置说明:
#关闭metrics功能 endpoints.metrics.enabled=false #开启shutdown远程关闭功能 endpoints.shutdown.enabled=true #设置beansId endpoints.beans.id=mybean #设置beans路径 endpoints.beans.path=/bean #关闭beans 功能 endpoints.beans.enabled=false #关闭所有的 endpoints.enabled=false #开启单个beans功能 endpoints.beans.enabled=true #所有访问添加根目录 management.context-path=/manage management.port=8181
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; @Component public class MyAppHealthIndicator implements HealthIndicator { @Override public Health health() { //自定义的检查方法 //Health.up().build()代表健康 return Health.down().withDetail("msg","服务异常").build(); } }
总结
以上所述是小编给大家介绍的spring boot starter actuator(健康监控)配置和使用教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
- 3298: [USACO 2011Open]cow checkers
- 3433: [Usaco2014 Jan]Recording the Moolympics
- 3410: [Usaco2009 Dec]Selfish Grazing 自私的食草者
- 3391: [Usaco2004 Dec]Tree Cutting网络破坏
- 3404: [Usaco2009 Open]Cow Digit Game又见数字游戏
- GIF/PNG/JPG和WEBP/base64/apng图片优点和缺点整理
- 3400: [Usaco2009 Mar]Cow Frisbee Team 奶牛沙盘队
- 3409: [Usaco2009 Oct]Barn Echoes 牛棚回声
- 浅谈webp
- 3385: [Usaco2004 Nov]Lake Counting 数池塘
- 2761: [JLOI2011]不重复数字(平衡树)
- 无图片字体icon
- 数据结构(三):栈与队列
- 3555: [Ctsc2014]企鹅QQ
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- CentOS 7 Redis 5.0.8 哨兵模式配置
- SpringBoot 项目的 Maven 多环境打包配置
- webRTC: 基于coturn项目的stun/turn服务器搭建
- 百度地图电子围栏功能
- opencv使用中出现的问题
- 人生苦短,我用k8s--------------Pod资源控制进阶管理
- 人生苦短,我用k8s--------------kuberctl命令合集
- Android使用Intent实现页面跳转
- Android实现单页显示3个Item的ViewPager炫酷切换效果
- Android用文件存储数据的方法
- Android编程监听APK安装与删除等过程的方法
- 人生苦短,我用k8s--------------详解yaml文件
- 排障集锦:九九八十一难之第二十难!-----使用jenkins镜像出现的问题Can not write to /var/jenkins_home/copy_reference_file.log.
- 人生苦短,我用k8s--------------secret和configmap的配置管理
- Go Colly抓取豆瓣电影Top250