1、Springboot版本2.3.9,引入Actuator的maven依赖,如下所示:
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
4 <modelVersion>4.0.0</modelVersion>
5 <parent>
6 <groupId>org.springframework.boot</groupId>
7 <artifactId>spring-boot-starter-parent</artifactId>
8 <version>2.3.9.RELEASE</version>
9 <relativePath/> <!-- lookup parent from repository -->
10 </parent>
11 <groupId>com.bie</groupId>
12 <artifactId>springboot</artifactId>
13 <version>0.0.1-SNAPSHOT</version>
14 <name>springboot</name>
15 <description>Demo project for Spring Boot</description>
16 <properties>
17 <java.version>1.8</java.version>
18 </properties>
19 <dependencies>
20 <dependency>
21 <groupId>org.springframework.boot</groupId>
22 <artifactId>spring-boot-starter-web</artifactId>
23 </dependency>
24
25 <dependency>
26 <groupId>org.springframework.boot</groupId>
27 <artifactId>spring-boot-starter-test</artifactId>
28 <scope>test</scope>
29 <exclusions>
30 <exclusion>
31 <groupId>org.junit.vintage</groupId>
32 <artifactId>junit-vintage-engine</artifactId>
33 </exclusion>
34 </exclusions>
35 </dependency>
36
37 <dependency>
38 <groupId>org.springframework.boot</groupId>
39 <artifactId>spring-boot-starter-actuator</artifactId>
40 </dependency>
41 </dependencies>
42
43 <build>
44 <plugins>
45 <plugin>
46 <groupId>org.springframework.boot</groupId>
47 <artifactId>spring-boot-maven-plugin</artifactId>
48 </plugin>
49 </plugins>
50 </build>
51
52 </project>
访问:http://127.0.0.1:8080/actuator,可以发现如下信息:
该信息列出了Springboot的所有endpoint端点,可以访问上面列出的地址信息。其中该端点http://127.0.0.1:8080/actuator/health的作用是进行健康检查,检查应用的资源。在application.properties中新增如下配置,可以展示health的详情,如下所示:
1 # 将health的详情展示出来
2 management.endpoint.health.show-details=always
访问:http://127.0.0.1:8080/actuator/health,可以展示磁盘资源。
健康检查的status的四种状态,第一种是UP,表示正常,第二种是Down,表示遇到了问题,不正常,第三种是Out_Of_service,资源未在使用,或者不该去使用,第四种是unkonwn,表示不知道。
而http://127.0.0.1:8080/actuator/info,该端点是描述性端点,在application.properties中可以进行配置,如下所示:
1 # 描述性端点,建议描述应用,可以书写应用的名称、作者、邮箱等等信息
2 info.springboot=springboot info
3 info.author=biehl
4 info.email=biehl@qq.com
访问路径之后,如下所示:
2、Springboot的常见端点,默认只有health和info是开放的,如下所示:
具体可以参考官网:https://docs.spring.io/spring-boot/docs/2.3.9.RELEASE/reference/htmlsingle/
参考官网,如下所示:
如何暴漏其他端点呢,如下所示:
1 # 激活所有的actuator端点,如果只想激活部分端点,只需要将*替换成自己的端点,如果是多个端点以逗号分隔。
2 management.endpoints.web.exposure.include=*
再次访问,http://127.0.0.1:8080/actuator,如下所示: