对于Spring Boot的应用,除了使用HTTP或TCP端口检测来进行应用健康检查之外,您也可以使用Actuator组件实现定制化健康检查。

相关介绍
Actuator组件是Spring Boot提供的用来对应用系统进行自省和监控的功能模块,借助于Actuator,您可以很方便地查看并统计应用系统的某些监控指标。您也可以通过Actuator组件自定义您的健康检查程序。更多信息,请参见Spring Boot Actuator官方文档。

操作步骤
在Maven中添加所需依赖。

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

设置application.properties配置文件,显示健康检查详细信息。

management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always  #显示健康检查详细信息,默认为never,即不显示。

通过自定义检查程序。我这边是自定义rabbit,就用/actuator/health/rabbit路径来单独获取这个健康指示器的结果。
新建RabbitHealthIndicator.java文件,输入代码,实现您业务中特定的检查内容。例如检查数据库连接是否正常,线程池状态等。示例代码如下所示:

@Component
public class RabbitHealthIndicator extends AbstractHealthIndicator {private final RabbitTemplate rabbitTemplate;public RabbitHealthIndicator( RabbitTemplate rabbitTemplate) {super("Rabbit health check failed");Assert.notNull(rabbitTemplate, "RabbitTemplate must not be null");this.rabbitTemplate = rabbitTemplate;}@Overrideprotected void doHealthCheck(Health.Builder builder) throws Exception {System.out.println("check---------rabbitmq");builder.up().withDetail("version", getConnection().getServerProperties().get("version").toString());builder.up().withDetail("product", getConnection().getServerProperties().get("product").toString());builder.up().withDetail("platform", getConnection().getServerProperties().get("platform").toString());builder.up().withDetail("capabilities",(Map<String, Object>)getConnection().getServerProperties().get("capabilities"));}private Connection getConnection() {return this.rabbitTemplate.execute((channel) -> channel.getConnection());}@Overridepublic Health getHealth(boolean includeDetails) {return super.getHealth(includeDetails);}
}

设置完成后,运行应用,进行健康检查。
通过直接访问默认端口进行健康检查。示例命令如下:
请求接口

localhost:8080/actuator/health/rabbit #rabbit为健康检查指示器类名前缀,请以自己定义的类名为准。

返回信息如图

Spring Boot Actuator自定义健康检查相关推荐

  1. Spring Boot Actuator:在其顶部具有MVC层的自定义端点

    Spring Boot Actuator端点允许您监视应用程序并与之交互. Spring Boot包含许多内置端点,您也可以添加自己的端点. 添加自定义端点就像创建一个从org.springframe ...

  2. Spring Boot Actuator:自定义端点,其顶部具有MVC层

    Spring Boot Actuator端点允许您监视应用程序并与之交互. Spring Boot包含许多内置端点,您也可以添加自己的端点. 添加自定义端点就像创建一个从org.springframe ...

  3. spring boot Actuator之自定义Endpoint

    本文基于spring boot 2.2.0 release版本. 在上一篇文章<spring boot Actuator原理详解之启动>详细介绍了在web环境下,Actuator是如何启动 ...

  4. SpringBoot2.x系列教程(七十)Spring Boot Actuator集成及自定义Endpoint详解

    前言 曾经看到Spring Boot Actuator这个框架时,一直在想,它到底有什么作用呢?虽然知道它提供了很多端点,有助于应用程序的监控和管理,但如果没有直接的实践案例,还是很难有说服力的. 直 ...

  5. 警惕 Spring Boot Actuator 引发的安全问题

    前言 一年一度的 HW 行动开始了,最近也是被各种安全漏洞搞的特别闹心,一周能收到几十封安全团队扫描出来的漏洞邮件,这其中有一类漏洞很容易被人忽视,但影响面却极广,危害也极大,我说出它的名字你应该也不 ...

  6. 朱晔和你聊Spring系列S1E7:简单好用的Spring Boot Actuator

    本文会来看一下Spring Boot Actuator提供给我们的监控端点Endpoint.健康检查Health和打点指标Metrics等所谓的Production-ready(生产环境必要的一些)功 ...

  7. 服务监控 Spring Boot Actuator 介绍

    服务监控 Spring Boot Actuator 介绍 1. 概述 在本文中,我们将介绍Spring Boot Actuator.首先介绍一些Actuator的基础知识,然后详细讨论Spring B ...

  8. (转)Spring Boot (十九):使用 Spring Boot Actuator 监控应用

    http://www.ityouknow.com/springboot/2018/02/06/spring-boot-actuator.html 微服务的特点决定了功能模块的部署是分布式的,大部分功能 ...

  9. Spring Boot Actuator与Spring Boot Admin详解

    原版文档: 文档:Spring Boot Actuator.note 链接:http://note.youdao.com/noteshare?id=fca965ad3f7ae3f79260d09056 ...

  10. Spring boot——Actuator 详解

    一.什么是 Actuator Spring Boot Actuator 模块提供了生产级别的功能,比如健康检查,审计,指标收集,HTTP 跟踪等,帮助我们监控和管理Spring Boot 应用. 这个 ...

最新文章

  1. rn 滑动验证_继卷轴屏之后,OPPO又展示一款“滑动”概念手机
  2. 百度研究院再升级,迎来9位世界级科学家
  3. 汇编和python-PyAsm-在python中嵌入汇编 | 学步园
  4. MTK android flash配置
  5. qt mysql怎么选表_Qt的Mysql数据库表操作(1)
  6. SpringBoot 2.x 监控中心:Actuator
  7. 广东48.6万人资产超600万 华东超600万人群最多
  8. 外贸网站香港服务器,香港云服务器更适合小型外贸网站使用
  9. python识别文字tesseract
  10. 图论算法——无向图的深度优先搜索和广度优先搜索
  11. linux 文件夹 775,Linux chmod目录权限命令图文详解
  12. sql 获取当前之后某天的日期
  13. kpi绩效考核流程图_某集团公司完整KPI绩效考核方案(PPT)
  14. matlab绘制正弦波频谱图,matlab对正弦信号作FFT得到频谱图
  15. macbook蓝牙pan未连接_macOS Catalina 10.15.1 连接iPad 13.2.2 分屏失败的解决办法
  16. 使用Quagga测试Neutron BGP动态路由(by quqi99)
  17. Linux进程间通信(上)
  18. jQuery元素操作-遍历元素
  19. 中国IT咨询公司的机会在哪里?
  20. 嵌入式学习——使用定时器输出PWM波形,实现 LED呼吸灯的效果

热门文章

  1. Linux下系统函数
  2. ubuntu10.10安装google拼音输入法
  3. 带有资源混淆的打补丁过程
  4. JavaScript中onblur事件
  5. sleuth zipkin reporter-sender 分析
  6. 性能测试CPU占用率太高如果解决?
  7. win10商店无法打开,错误0x80131500、0x80072EFD
  8. 本地生成RDL报表文件的创建工具
  9. 即将创业的我转发一篇鸡汤文---采访了 10 位身价过亿的 CEO,我终于看懂了有钱人的“奋斗”
  10. Charles cannot configure your proxy settings while it is on a read-only volume