Spring Boot Actuator
-
Add Dependencies: Ensure you have the necessary dependencies in your
pom.xmlorbuild.gradlefile. For Maven, it would look something like this:<dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-ui</artifactId> <version>1.6.14</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> -
Enable Actuator Endpoints in Swagger: You need to configure Springdoc OpenAPI to include Actuator endpoints. This can be done by setting the
springdoc.show-actuatorproperty totruein yourapplication.propertiesorapplication.ymlfile:springdoc.show-actuator=true -
Configure Swagger: Create a configuration class to set up Swagger. Here’s an example:
import org.springdoc.core.GroupedOpenApi; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class SwaggerConfig { @Bean public GroupedOpenApi actuatorApi() { return GroupedOpenApi.builder() .group("actuator") .pathsToMatch("/actuator/**") .build(); } } -
Access Swagger UI: Once everything is set up, you can access the Swagger UI at
http://localhost:8080/swagger-ui.htmlto see the Actuator endpoints documented.
Micrometer监控 Tomcat 线程
要在 Spring Boot 中配置监控 Tomcat 线程,可以使用 Micrometer 和 Spring Boot Actuator。以下是一个简单的配置步骤:
- 添加依赖:
在
pom.xml文件中添加 Micrometer 和 Actuator 的依赖:
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
- 启用 Actuator 端点:
在
application.properties或application.yml文件中启用所需的 Actuator 端点:
management.endpoints.web.exposure.include=*
server.tomcat.mbeanregistry.enabled=true
-
配置 Tomcat 线程监控: Spring Boot Actuator 默认会暴露一些 Tomcat 相关的指标。你可以通过访问
/actuator/metrics端点来查看这些指标。例如,访问http://localhost:8080/actuator/metrics/tomcat.threads.current可以查看当前 Tomcat 线程数。 -
查看指标: 你可以使用任何支持 Micrometer 的监控系统(如 Prometheus、Grafana)来收集和展示这些指标。