为数据可视化赋能Spring Boot Admin - 第297篇
说明
Spring Boot:2.2.2
Spring Boot Admin:2.2.0(版本很重要,1.x的版本配置项不一样)
师傅:徒儿,知道Actuator不?
悟纤:这个谁不知道呐。
师傅:那你来说说看Actuator是做什么的?
悟纤:Actuator就是Spring Boot带的监控功能,可以帮助实现对程序内部运行情况监控,比如监控状况、Bean加载情况、环境变量、日志信息、线程信息等。
师傅:不错,总结的很到位了,那用起来是不是还是不爽。
悟纤:嗯,是的,通过请求查看,确实不是很方便也。
师傅: 今天咱们就来研究下Spring Boot Admin,一个可以把Actuator数据可视化的组件。
悟纤:透视化,666。
一、Spring Boot Admin接入说明
对于Spring Boot Admin是由两部分构成的,admin-server和admin-client, admin-client就是在客户端收集数据的,admin-server就是汇总admin-client收集的数据。
所以:
(1)要创建一个admin-server的项目,用来收集数据。
(2)在要收集数据的spring boot中添加admin-client。
二、Spring Boot Admin接入操作
2.1 Admin-Server
创建一个Spring Boot项目,添加admin-server的依赖,引入如下依赖:
- <dependency>
- <groupId>de.codecentric</groupId>
- <artifactId>spring-boot-admin-starter-server</artifactId>
- <version>2.2.0</version>
- </dependency>
在启动类启用admin-server:
- @SpringBootApplication
- @EnableAdminServer
在配置文件添加配置:
- spring.application.name = admin-server
- server.port = 8888
2.2 Admin-Client
在需要进行可视化的项目中添加admin-client依赖:
- <dependency>
- <groupId>de.codecentric</groupId>
- <artifactId>spring-boot-admin-starter-client</artifactId>
- <version>2.2.0</version>
- </dependency>
在配置文件添加配置:
- spring.boot.admin.client.url = http://localhost:8888
- management.endpoints.web.exposure.include=*
- management.endpoints.web.health.show-details=ALWAYS
版本的不同,这里配置的key是不一样的。
2.3 验证效果
启动admin-server,启动client,然后就可以访问地址:
三、Spring Boot Admin其它说明
3.1 Admin-Server安全问题
这个可以配置Spring Security进行安全控制,那么访问admin-server的控制台和client都需要进行账号和密码才能进行连接了。
3.2 client状态通知
如果我们的一个spring boot挂了,我们希望能够进行通知下,admin-server也是支持的,而且支持多种通知方式:
(1)电子邮件
(2)PagerDuty
(3)OpsGenie
(4)Hipchat
(5)Slack
(6)Let’s Chat
3.3 是否支持在Spring Cloud中使用呢?
这个是支持的,配置上的一些差别而已。
四、小思考
如果要自定制Spring Boot Admin的UI的话,要怎么破呐?下节带你撕破它的衣服。
我就是我,是颜色不一样的烟火。
我就是我,是与众不同的小苹果。购买完整视频,请前往:http://www.mark-to-win.com/TeacherV2.html?id=287