spring boot starter actuator(健康监控)配置和使用教程

作者:yangliuhbhd 时间:2021-07-29 06:24:18 

添加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(健康监控)配置和使用教程网站的支持!

来源:https://blog.csdn.net/yangliuhbhd/article/details/80655847

标签:spring,boot,starter,actuator,监控
0
投稿

猜你喜欢

  • Java新特性之Nashorn_动力节点Java学院整理

    2022-07-31 17:18:13
  • Android编程实现获得内存剩余大小与总大小的方法

    2023-06-07 05:49:17
  • Android中实现Webview顶部带进度条的方法

    2022-04-22 15:45:43
  • C#实现策略模式

    2022-02-09 17:19:01
  • Spring实例化bean的四种方式详解

    2022-01-19 23:09:15
  • Android自定义View展开菜单功能的实现

    2022-02-08 06:28:49
  • 详解Java中的JDK、JRE、JVM

    2023-07-10 04:38:50
  • 基于WPF实现筛选下拉多选控件

    2021-11-15 20:47:50
  • android开发教程之自定义属性用法详解

    2022-09-22 20:26:17
  • C++实现扫雷小游戏

    2022-07-27 22:59:39
  • 利用C#实现网络爬虫

    2022-03-26 18:40:25
  • 如何通过指针突破C++类的访问权限

    2022-01-26 14:14:58
  • C# 进行图片压缩的示例代码(对jpg压缩效果最好)

    2023-05-11 16:34:19
  • C#学习笔记- 浅谈数组复制,排序,取段,元组

    2021-10-21 00:50:58
  • Eclipse项目有红感叹号的解决方法

    2023-02-13 10:54:15
  • 浅谈Java中的Queue家族

    2021-12-23 08:36:49
  • 使用BufferedReader读取本地文件的操作

    2021-10-15 03:22:47
  • c#读写ini配置文件示例

    2023-09-29 16:31:36
  • Android仿美团网、大众点评购买框悬浮效果修改版

    2023-10-05 13:12:17
  • ViewDragHelper实现QQ侧滑效果

    2022-12-25 23:26:54
  • asp之家 软件编程 m.aspxhome.com