SpringBoot - 监控管理
2021-02-17 06:17
标签:访问 com 异常 heap 编写 read 健康 方式 with 通过引入spring-boot-starter-actuator,可以使用SpringBoot提供的准生产环境下的应用监控和管理功能。我们可以通过HTTP,JMX,SSH协议来进行操作,自动得到审计、健康等指标信息 启动项目,先不进行配置,浏览器访问http://localhost:8080/actuator 可以看出,默认只暴露了health和info两个端点 application.properties中添加配置 springboot 2.x版本配置暴露所有端点,http访问时默认需要加上/actuator前缀 再次访问http://localhost:8080/actuator 显示了所有端点 修改默认根路径 浏览器访问http://localhost:8080/health,显示如下 health端点默认只显示"status":"UP",配置显示详细信息 再次访问http://localhost:8080/health,显示如下 设置启用单个端点(/shutdown) 开启shutdown端点,可远程关闭应用,注意访问时需要post提交,除shutdown外其他端点默认启用 配置http访问端点的端口,如果改成-1会关闭所有端点 现在需要访问http://localhost:8081/health才会显示端点信息 设置不暴露某个端点 再次访问http://localhost:8081/health health端点status变成了DOWN,也多了myApp的提示信息 SpringBoot - 监控管理 标签:访问 com 异常 heap 编写 read 健康 方式 with 原文地址:https://www.cnblogs.com/codeDD/p/12699591.html监控管理
SpringBoot整合监控管理
步骤
测试运行
{
"_links": {
"self": {
"href": "http://localhost:8080/actuator",
"templated": false
},
"health": {
"href": "http://localhost:8080/actuator/health",
"templated": false
},
"health-component": {
"href": "http://localhost:8080/actuator/health/{component}",
"templated": true
},
"health-component-instance": {
"href": "http://localhost:8080/actuator/health/{component}/{instance}",
"templated": true
},
"info": {
"href": "http://localhost:8080/actuator/info",
"templated": false
}
}
}
management.endpoints.web.exposure.include=*
{
"_links": {
"self": {
"href": "http://localhost:8080/actuator",
"templated": false
},
"auditevents": {
"href": "http://localhost:8080/actuator/auditevents",
"templated": false
},
"beans": {
"href": "http://localhost:8080/actuator/beans",
"templated": false
},
"caches-cache": {
"href": "http://localhost:8080/actuator/caches/{cache}",
"templated": true
},
"caches": {
"href": "http://localhost:8080/actuator/caches",
"templated": false
},
"health": {
"href": "http://localhost:8080/actuator/health",
"templated": false
},
"health-component-instance": {
"href": "http://localhost:8080/actuator/health/{component}/{instance}",
"templated": true
},
"health-component": {
"href": "http://localhost:8080/actuator/health/{component}",
"templated": true
},
"conditions": {
"href": "http://localhost:8080/actuator/conditions",
"templated": false
},
"configprops": {
"href": "http://localhost:8080/actuator/configprops",
"templated": false
},
"env": {
"href": "http://localhost:8080/actuator/env",
"templated": false
},
"env-toMatch": {
"href": "http://localhost:8080/actuator/env/{toMatch}",
"templated": true
},
"info": {
"href": "http://localhost:8080/actuator/info",
"templated": false
},
"loggers": {
"href": "http://localhost:8080/actuator/loggers",
"templated": false
},
"loggers-name": {
"href": "http://localhost:8080/actuator/loggers/{name}",
"templated": true
},
"heapdump": {
"href": "http://localhost:8080/actuator/heapdump",
"templated": false
},
"threaddump": {
"href": "http://localhost:8080/actuator/threaddump",
"templated": false
},
"metrics-requiredMetricName": {
"href": "http://localhost:8080/actuator/metrics/{requiredMetricName}",
"templated": true
},
"metrics": {
"href": "http://localhost:8080/actuator/metrics",
"templated": false
},
"scheduledtasks": {
"href": "http://localhost:8080/actuator/scheduledtasks",
"templated": false
},
"httptrace": {
"href": "http://localhost:8080/actuator/httptrace",
"templated": false
},
"mappings": {
"href": "http://localhost:8080/actuator/mappings",
"templated": false
}
}
}
management.endpoints.web.base-path=/
{
"status": "UP"
}
management.endpoint.health.show-details=always
{
"status": "UP",
"details": {
"diskSpace": {
"status": "UP",
"details": {
"total": 64424505344,
"free": 8456863744,
"threshold": 10485760
}
}
}
}
management.endpoint.shutdown.enabled=true
management.server.port=8081
management.endpoint.web.exposure.exclude=端点名
自定义健康健康状态指示器
@Component
public class MyAppHealthIndicator implements HealthIndicator {
@Override
public Health health() {
return Health.down().withDetail("msg","服务异常").build();
}
}
{
"status": "DOWN",
"details": {
"myApp": {
"status": "DOWN",
"details": {
"msg": "服务异常"
}
},
"diskSpace": {
"status": "UP",
"details": {
"total": 64424505344,
"free": 8456863744,
"threshold": 10485760
}
}
}
}
端点详细信息
端点名
描述
autoconfig
所有自动配置信息
auditevents
审计事件
beans
所有Bean的信息
configprops
所有配置属性
dump
线程状态信息
env
当前环境信息
health
应用健康状况
info
当前应用信息
metrics
应用的各项指标
mappings
应用@RequestMapping映射路径
shutdown
关闭当前应用(默认不启用)
trace
追踪信息