# Spring-Boot-Admin搭建的服务监控系统 **Repository Path**: asurplus/springboot-admin ## Basic Information - **Project Name**: Spring-Boot-Admin搭建的服务监控系统 - **Description**: Spring-Boot-Admin搭建的服务监控系统 - **Primary Language**: Java - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 2 - **Created**: 2022-02-20 - **Last Updated**: 2026-08-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Spring-Boot-Admin服务监控系统 ## 项目介绍 本项目基于Spring Boot Admin构建了一套完整的服务监控系统,用于实时监控Spring Boot应用程序的运行状态、健康检查、指标信息等。系统采用服务端-客户端架构,通过服务端集中管理和展示所有客户端应用的监控数据。 ## 系统架构 项目采用模块化设计,包含两个核心模块: - **monitor-server**:Spring Boot Admin服务端,负责接收各客户端的心跳信息,提供可视化监控界面,并支持状态变更通知 - **monitor-client**:示例客户端应用,演示如何将Spring Boot应用接入监控体系 ## 环境要求 - JDK 1.8 或更高版本 - Maven 3.0+ - Spring Boot 2.x 系列版本 ## 快速开始 ### 1. 编译项目 在项目根目录下执行以下命令进行编译: ```bash mvn clean package -DskipTests ``` ### 2. 启动服务端 进入monitor-server模块目录并启动: ```bash cd monitor-server mvn spring-boot:run ``` 服务启动后,访问 http://localhost:8080 即可进入监控管理界面。 ### 3. 启动客户端 新开一个终端窗口,进入monitor-client模块目录并启动: ```bash cd monitor-client mvn spring-boot:run ``` 客户端启动后,将自动注册到服务端,您可以在监控界面中看到客户端的运行状态。 ## 模块说明 ### monitor-server(监控服务端) 监控服务端是整个系统的核心组件,提供以下功能: - **服务注册发现**:自动接收并管理所有客户端的心跳注册 - **状态监控**:实时展示各客户端应用的状态信息(UP/DOWN/UNKNOWN) - **健康检查**:汇总各客户端的健康检查端点数据 - **指标信息**:展示JVM内存、线程、垃圾回收等运行时指标 - **日志管理**:查看各客户端的应用日志 - **通知功能**:当客户端状态发生变更时,自动触发通知机制 #### 核心配置类 - **MessageNotifier**:继承自AbstractStatusChangeNotifier,实现状态变更时的自定义通知逻辑,支持获取当前时间戳并记录事件 - **WebSecurityConfigurer**:自定义安全配置类,管理监控界面的访问权限控制 ### monitor-client(监控客户端) 示例客户端应用演示了标准的Spring Boot Admin客户端接入方式: - **自动注册**:启动时自动向服务端注册心跳信息 - **健康端点**:暴露应用的健康检查数据 - **测试接口**:提供/init接口用于测试服务状态 访问 http://localhost:8081/init 可测试客户端服务的可用性。 ## 配置说明 ### 服务端配置(monitor-server/src/main/resources/application.yml) 主要配置项包括服务端口、上下文路径以及安全相关设置。建议配置登录认证以保护监控界面的访问安全。 ### 客户端配置(monitor-client/src/main/resources/application.yml) 主要配置项包括服务端地址、客户端端口以及应用名称。确保spring.boot.admin.client.url指向正确的服务端地址。 ## 功能特点 - **可视化仪表盘**:直观展示所有受监控应用的实时状态 - **详细的健康信息**:包括数据库连接、磁盘空间、内存使用等关键指标 - **日志实时查看**:无需登录各应用即可集中查看日志 - **自定义通知**:支持邮件、钉钉等多种通知方式(可扩展) - **安全访问控制**:支持对接企业统一认证系统 - **集群支持**:可同时监控多个微服务实例 ## 许可证 本项目遵循开源协议,具体许可证信息请参阅项目根目录下的LICENSE文件。