系列笔记:
- SpringBoot实战(1)-Spring 4.x
- SpringBoot实战(2)-Spring MVC 4.x
- SpringBoot实战(3)-Spring Boot
- SpringBoot实战(4)-Spring Boot Web&Data
- SpringBoot实战(5)-Spring Boot 企业级开发
- SpringBoot实战(6)-Spring Boot 开发部署与测试
- SpringBoot实战(7)-Spring Boot 应用监控
- SpringBoot实战(8)-Spring Boot 分布式系统开发
Spring Boot 提供了运行时的应用监控和管理的功能。我们可以通过http、JMX、SSH(SB2已经不支持,官方文档找不到)协议
来进行操作。审计、健康及指标信息将会自动得到
Spring Boot 提供了监控和管理端点:
如果是Web应用(Spring MVC, Spring WebFlux, or Jersey), 还可以使用如下附加管理端点:
端点的默认开放情况:
由于端点可能包含敏感信息,因此应仔细考虑何时公开它们。具体可参考:Spring Boot Actuator官方文档
要配置端点的启用,可以使用management.endpoint.<id>.enabled
属性。
# 例如:
management.endpoint.beans.enabled=true
management.endpoint.conditions.enabled=true
management.endpoint.configprops.enabled=true
SpringBoot 还支持自定义 Endpoints,自定义 HealthIndicators(健康检查)
http 方式
gradle 需添加依赖:
dependencies {
implementation ("org.springframework.boot:spring-boot-starter-actuator")
}
浏览器访问:http://localhost:8080/actuator
即可。
JMX 方式
在控制台调用Java内置的 jconsole
来实现 JMX 监控:
jconsole
此时会打开 jconsole 页面,选择当前程序的进程,连接(可能是不安全的连接),在 MBean
标签的org.springframework.boot
域下可对我们的程序进行监控和管理。
IDEA 的支持
IDEA 在 Run Dashboard 中的 Endpoints 页面中可以直接监控和管理。
评论区