使用 Actuator 对 SpringBoot 进行监控
一、Actuator 作用
在应用程序中提供多个 Web 端点,通过端点可以获取程序执行的内部信息。
二、提供的端点及作用
HTTP 方法 | 路径 | 描述 |
---|---|---|
GET | /autoconfig | 提供一份自动配置报告,记录哪些自动配置的条件通过了,哪些没通过 |
GET | /configprops | 描述配置属性(包含默认值)如何注入 Bean |
GET | /beans | 描述应用程序上下文里全部的 Bean,以及他们的关系 |
GET | /dump | 获取线程活动的快照 |
GET | /evn | 获取全部环境属性 |
GET | /evn/{name} | 根据名称获取特定的环境属性值 |
GET | /health | 报告应用程序的健康指标,值由 HealthIndicator 的实现类提供 |
GET | /info | 获取应用程序的定制信息,这些信息由 info 开头的属性提供 |
GET | /mappings | 描述全部的 URL 路径,以及它们和控制器(包括 Actuator 端点)的映射关系 |
GET | /metrics | 报告各种应用程序度量信息,比如内存用量和 HTTP 请求计数 |
GET | /metrics/{name} | 报告指定名称的应用程序度量值 |
POST | /shutdown | 关闭应用程序,要求 endpoints.shutdown.enabled 设置为 true |
GET | /trace | 提供基本的 HTTP 请求跟踪信息(时间戳、HTTP 头等) |
三、使用
- 添加依赖
Maven:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
Gradle:
compile 'org.springframework.boot:spring-boot-starter-actuator'
- 通过 HTTP 连接即可;还可通过 ssh、jmx 等连接,但提供的功能会有所变化。
- 可根据需要在 .properties 或 .yml 文件中关闭不想要的接口。