前言
什么?你一个请求的事,就把我刚刚启动好的项目关停了,又要挨打了吧。哈哈,生活不易,求放过。放过你也行,快快告诉我你的绝招。本节内容我们主要介绍一下springboot应用的常见应用参数监控指标,从而更好的关注springboot应用的运行状况并实现应用的监控。除此之外,我们通过集成一个第三方的监控平台,通过图形化的界面实时观测我们运行项目的一些实时运行参数指标。
正文
- 通过spring初始化器创建一个springboot项目

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

#监控配置
management:
endpoints:
enabled-by-default: true #暴露所有端点信息
web:
exposure:
include: '*' #以web暴露
endpoint:
health:
show-details: always


- health:健康状况指标
- metrics:运行时指标
- loggers:日志监控
-?env:应用环境变量
- beans:应用bean
-?shutdown:关停web应用(通过访问shutdown地址,关停web应用)
- 集成spring-boot-admin组件服务器,完成springboot项目的监控
1.引入pom依赖,这里为了方便演示,将服务端和客户端在同一个项目中集成,通常情况下,服务端作为一个单独的应用部署
<!-- 客户端-->
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>2.3.1</version>
</dependency>
<!-- 服务端-->
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-server</artifactId>
<version>2.3.1</version>
</dependency>

2.在启动类添加@EnableAdminServer,开启监控服务

3.启动应用,访问该监控服务,http://ip:port/

4.将客户端服务注册到该服务器上,前面已经引入客户端的pom依赖,其它独立的项目可以单独引入该客户端pom,在application.yml配置文件中添加监控服务器的地址
spring:
boot:
admin:
client:
url: http://localhost:8888 #服务端地址
instance:
prefer-ip: true

5.重启应用,访问监控服务地址

6.图形化界面查看应用监控数据?

结语
至此,关于springboot监控指标的内容就全部结束了,无论是通过接口获取应用监控指标还是通过spring-boot-admin组件获取监控指标,本质都是通过对外暴露springboot的一些应用监控接口,从而实现对springboot应用的监控,当然我们也可以通过自定义一些监控指标暴露出来使用,这里不在详细展开叙述。最后一点,我们的监控指标要根据自己的实际需求有选择的暴露,以免造成不必要的安全问题。本节内容到此结束,我们下期见。。。
|