系列笔记:
- [SpringBoot实战(1)-Spring 4.x](/spring4)
- [SpringBoot实战(2)-Spring MVC 4.x](/springmvc4)
- [SpringBoot实战(3)-Spring Boot](/springboot)
- [SpringBoot实战(4)-Spring Boot Web&Data](/springbootweb)
- [SpringBoot实战(5)-Spring Boot 企业级开发](/springbootenterprise)
- [SpringBoot实战(6)-Spring Boot 开发部署与测试](/springbootops)
- SpringBoot实战(7)-Spring Boot 应用监控
- [SpringBoot实战(8)-Spring Boot 分布式系统开发](/springcloud)
Spring Boot 提供了运行时的应用监控和管理的功能。我们可以通过http、JMX、SSH(SB2已经不支持,官方文档找不到)协议
来进行操作。审计、健康及指标信息将会自动得到
Spring Boot 提供了监控和管理端点:

如果是Web应用(Spring MVC, Spring WebFlux, or Jersey), 还可以使用如下附加管理端点:

端点的默认开放情况:

> 由于端点可能包含敏感信息,因此应仔细考虑何时公开它们。具体可参考:[Spring Boot Actuator官方文档](https://docs.spring.io/spring-boot/docs/2.1.1.RELEASE/reference/htmlsingle/#production-ready-enabling)
要配置端点的启用,可以使用``management.endpoint.<id>.enabled``属性。
```properties
# 例如:
management.endpoint.beans.enabled=true
management.endpoint.conditions.enabled=true
management.endpoint.configprops.enabled=true
```
> SpringBoot 还支持自定义 Endpoints,自定义 HealthIndicators(健康检查)
# http 方式
gradle 需添加依赖:
```gradle
dependencies {
implementation ("org.springframework.boot:spring-boot-starter-actuator")
}
```
浏览器访问:``http://localhost:8080/actuator`` 即可。
# JMX 方式
在控制台调用Java内置的 ``jconsole`` 来实现 JMX 监控:
```bash
jconsole
```
此时会打开 jconsole 页面,选择当前程序的进程,连接(可能是不安全的连接),在 ``MBean`` 标签的``org.springframework.boot``域下可对我们的程序进行监控和管理。
# IDEA 的支持
IDEA 在 Run Dashboard 中的 Endpoints 页面中可以直接监控和管理。
[笔记]SpringBoot实战(7)-Spring Boot 应用监控