SpringBoot Admin 如何实现Actuator端点可视化监控
作者:Heartsuit
SpringBoot Admin 实现Actuator端点可视化监控
简介
Actuator可视化监控SpringBoot Admin
Note:
- SpringBoot版本: 2.1.4
- SpringBoot Admin版本: 2.1.5
Spring Boot Admin Server
单独建一个Spring Boot Admin Server工程作为服务端
在Maven的pom.xml文件中添加 spring-boot-admin-server 与 spring-boot-admin-server-ui 依赖:
<dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server</artifactId> <version>2.1.5</version> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server-ui</artifactId> <version>2.1.5</version> </dependency>
在主类上添加注解启用Spring Boot Admin
@EnableAdminServer @SpringBootApplication public class AdminApplication { public static void main(String[] args) { SpringApplication.run(AdminApplication.class, args); } }
到此, Spring Boot Admin服务端工程建立完毕, 在浏览器访问 http://localhost:8000 , 打开管理页面, 目前没有客户端实例注册过来, 显示为空。 接下来建立客户端工程。
Spring Boot Admin Client
建一个Spring Boot工程
在Maven的pom.xml文件中添加 spring-boot-admin-starter-client 依赖:
<dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> <version>2.1.5</version> </dependency>
application.yml 配置: 1. 暴露指定端口; 2. 注册到Spring Boot Admin服务端
management: endpoints: web: exposure: include: "*" exclude: env,beans spring: boot: admin: client: url: http://localhost:8000 instance: name: ReactiveCrud
Note: 当然这里首先要开启项目的Actuator端点监控功能, 可参考SpringBoot2开启Actuator端点监控
启动客户端, 在管理端进行可视化端点监控
Journal
启动客户端后, 会在 Journal 页面看到客户端注册到管理端发生的各类事件;
上面通过 Spring Boot Admin 实现了对Spring Boot暴露的 Actuator 端点的可视化监控, 对于详细的端点信息, 以及 Spring Boot Admin 的其他配置, 可参考相关文档。 后续增加认证功能, 即需要用户登录才能进入管理端。
References
- https://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-endpoints.html
- http://codecentric.github.io/spring-boot-admin/2.1.4/#securing-spring-boot-admin
Spring Boot 监控信息可视化
使用spring-boot-starter-actuator监控太过于麻烦,而且通过返回的JSON数据查看起来非常不方便,使用Spring Boot 中提供的监控信息管理端,用来实现监控信息的可视化,可以快速查看系统运行状况,再不用一个一个接口地调用接口。
具体配置:
一、设置Spring Boot Admin Server
1.添加依赖
<dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-server</artifactId> <version>2.2.0</version> </dependency>
2.在启动类上添加@EnableAdminServer注解
@SpringBootApplication @EnableAdminServer public class SpadminApplication { public static void main(String[] args) { SpringApplication.run(SpadminApplication.class, args); } }
3.启动醒目浏览器 输入http://localhost:8888/applications
二、注册客户端
1.新建一个项目
2.添加依赖
<dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> <version>2.2.0</version> </dependency>
3.在application.properties添加配置
server.port=8889 spring.boot.admin.client.url=http://localhost:8888 management.endpoints.web.exposure.include=*
4.启动项目(server端先运行)
浏览器http://localhost:8888/ 等待片刻后
点击进入
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。