Springboot actuator应用后台监控实现

论坛 期权论坛 脚本     
niminba   2021-5-23 03:29   1530   0

一 前言

springboot 额外的特色是提供了后台应用监控,可以通过 HTTP 或者 JMX的方式管理监控应用,本文主讲HTTP方式;其主要的功能是监控应用的健康状态,查看环境变量等;

二 pom.xml

springboot 2.1.1,主要引入 actuator 依赖,web依赖用于测试;

   <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>

三 默认开启端点

3.1 默认端点 health

直接编写主程序入口,启动;浏览器输入 http://localhost:8080/actuator/health;结果如下,状态是UP;


翻翻源码heath状态码如下

public OrderedHealthAggregator() {
  this.setStatusOrder(Status.DOWN, Status.OUT_OF_SERVICE, Status.UP, Status.UNKNOWN);
 }
  • DOWN 服务无法获得,状态码503;
  • .OUT_OF_SERVICE 服务无法获得,状态码503;
  • UP 获得服务,状态码200;
  • UNKNOWN 获得未知服务,状态码200;

在 application.yml 中配置 healthy 信息 示例如下:

management: endpoint: health: show-details: always

打印详细信息:


基本配置如下:

never :默认,表示不显示详细信息;when-authorized:详细信息显示给 认证过的用户;使用

management.endpoint.health.roles 配置always: 显示详细信息给所有用户3.2 默认端点 info

浏览器输入 http://localhost:8080/actuator/info; 展示空信息如下图:


在application.yml 中 配置工程 info 信息 示例如下;

#配置信息info: actuator: name: springboot-actutor version: 1.0.0 author: zszxz

展示结果如下:

四 HTTP端点说明

端点 端点描述 默认值
auditevents 当前应用的审计事件 Yes
beans 显示spring IOC 容器加载的所有bean Yes
caches 显示可获得的缓存 Yes
conditions 显示自动配置通过condition判断匹配或者不匹配的配置信息 Yes
configprops 显示 通过 @ConfigurationProperties 配置的属性信息 Yes
env spring环境变量属性信息 Yes
flyway 显示flyway 配置数据库已经迁移的信息 Yes
health 显示应用的健康信息 Yes
httptrace 显示 HTTP 轨迹信息默认最新的100 HTTP request或response Yes
info 显示自定义的应用信息 Yes
integrationgraph 显示spring 整合 graph 信息 Yes
loggers 显示配置文件中日志修改信息 Yes

还可以使用注解进行配置,自定义端点,详细参照官网;

jmx支持,可以使用open jdk 自带的工具 jconsole 进行监控;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持社区。

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:1060120
帖子:212021
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP