springboot09、监控
前言
因为公司开发的项目多、为客户部署的项目实例多。工作中我们都会经常遇到,由于某个客户的项目突然无法访问,一堆研发、售后部门的同事火急火燎处理问题的场景。
- 能够有一个界面,监控所有关注的项目实例运行状态。
- 对于某个项目实例来说,可以监控该实例的各项运行参数,例如内存占用情况、磁盘使用情况、数据库连接情况。
利用 Spring Boot Admin 实现可视化监控,此时至少需要两个项目实例,一个是监控的管理端,一个是被监控的客户端。
注:会与swagger冲突。这个功能是在上线后使用,所以注意关闭swagger。
目录
前言
1、pom配置
2、启动项配置
3、访问主页
4、客户端pom依赖:
5、修改客户端配置
1、pom配置
代码语言:javascript复制<!-- Spring Boot Admin 管理端依赖项 -->
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-server</artifactId>
<version>2.2.3</version>
</dependency>
2、启动项配置
代码语言:javascript复制package com.item;
import de.codecentric.boot.admin.server.config.EnableAdminServer;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.scheduling.annotation.EnableScheduling;
@MapperScan("com.item.dao")
@SpringBootApplication
@EnableScheduling
@EnableAdminServer
public class Action extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Action.class);
}
public static void main(String[] args) {
SpringApplication.run(Action.class,args);
}
}
3、访问主页
根据端口号访问就行【http://127.0.0.1:8088/】
4、客户端pom依赖:
代码语言:javascript复制<!-- Spring Boot Admin监控客户端依赖 -->
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>2.2.3</version>
</dependency>
5、修改客户端配置
代码语言:javascript复制# 修改端口号避免冲突
server.port=8081
# 配置监控管理端地址
spring.boot.admin.client.url=http://127.0.0.1:8088
# 客户端的名称,用于区分不同的客户端
spring.boot.admin.client.instance.name=CLIENT1
# 配置客户端展示哪些信息,*表示展示全部信息
management.endpoints.web.exposure.include=*
启动client_test,可以看到应用是1了,可以多启动几个,都能看到
点击进去:
多弄几个效果还是很明显的。