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

网友投稿 621 2023-01-29


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

添加POM依赖:

org.springframework.boot

spring-boot-starter-actuator

org.springframework.boot

spring-boot-starter-web

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(健康监控)配置和使用教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,会及时回复大家的。在此也非常感谢大家对我们网站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解webpack4升级指南以及从webpack3.x迁移
下一篇:共享文件系统企业(企业共享文件夹)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~