SpringBoot-开启Admin监控服务

SpringBoot-Admin是一个用于管理和监控SpringBoot应用程序的开源项目。它提供了一个易于使用的Web界面,可以实时监控应用程序的健康状况、性能指标、日志和环境配置等信息。通过Actuator模块来收集和暴露应用程序的监控信息,使用Web Socket或者Server-Sent Events实时显示和更新监控面板,提供针对应用程序的管理和操作功能,如启动、关闭、重启等。本文将介绍如何配置和开启SpringBoot的Admin监控服务。

SpringBoot-Admin监控服务需要搭建服务端,服务端作为一个单独的项目发布,我们查看所有受此服务端监控的项目,都是通过访问该服务端的地址。

一、搭建SpringBoot-Admin项目(服务端)

1、创建SpringBoot项目

新建一个 Spring Boot 项目,并选择 SpringBoot-Admin(Server) 和 Spring Web 作为依赖。

在 pom.xml 文件中添加 SpringBoot-Admin 的依赖。依赖勾选 SpringBoot-Admin(Server) 和 SpringWeb。

这里我为了防止所有人都可以通过访问服务端端口,查看SBA内容,所以我额外添加了Security的依赖,这里不添加也是可以的,后面pom.xml里可以随时导入。


2、在启动类的前面加上@EnableAdminServer注解

在启动类上添加 @EnableAdminServer 注解,标识这是一个 SpringBoot-Admin 服务端。


3、设置服务端口

配置服务端口,确保服务能够正常启动。


4、启动SBA项目访问测试

启动 SpringBoot-Admin 服务端项目,访问配置的端口(例如:localhost:8088)

出现Spring Boot Admin控制台界面即为搭建成功。


二、配置需要被监听的项目(客户端)

1、添加客户端依赖

在被监听的 Spring Boot 项目的 pom.xml 增加 spring-boot-admin-starter-client 相关依赖。

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-starter-client</artifactId>
</dependency>            

2、配置客户端

在 application-dev.yml 中添加 SpringBoot-Admin 项目的客户端配置。
同时,配置Actuator,确保 Actuator 端点暴露,以便 SpringBoot-Admin 可以监控。

spring:#Spring下面添加如下配置application:## 注册服务名name: ProjectSchedule# springbootAdminboot:admin:client:#这里的8088端口就是SBA服务端的地址端口url: http://127.0.0.1:8088jackson:serialization:indent_output: true# springbootAdmin配置和Spring平级
management:endpoints:jmx:exposure:include: '*'web:exposure:include: '*'exclude: configprops# 排除对配置信息的监控,每次浏览这个节点的时候,# 数据库的链接就一直释放不掉, 最后导致超时,因为配置信息的监控也不重要,#enabled-by-default: trueinfo:env:enabled: trueendpoint:health:show-details: always


3、同时启动被监听项目和SBA服务端项目测试

同时启动被监听的项目和 SpringBoot-Admin 服务端项目,访问服务端页面即可看到被监听的应用列表,点击进去可以查看详细的监控信息。

两个项目均正常启动。
访问服务端页面可以看到应用列表里有我们刚刚引入SBA客户端配置的项目。

admin 005 1024x538 - SpringBoot-开启Admin监控服务

点击进去看到更详细的内容。

通过以上步骤,我们成功搭建了 SpringBoot-Admin 监控服务,在日后的开发过程中我们就可以通过 SpringBoot-Admin 轻松管理和监控 Spring Boot 应用程序了。 


三、开启SpringBoot-Admin的优势与好处

1、实时监控

SpringBoot-Admin 提供了实时的监控信息,这是其最显著的优势之一。通过 SpringBoot-Admin 的直观监控面板,开发者可以随时随地了解应用程序的状态。这种实时监控的特性使得开发团队能够在应用程序出现问题时迅速作出反应,提高了故障排查的效率。无论是检测性能瓶颈、异常堆栈还是实时流量数据,SpringBoot-Admin都提供了丰富的监控数据,帮助开发者及时发现并解决潜在的问题,从而保障应用程序的稳定运行。


2、易于使用的 Web 界面

SpringBoot-Admin 不仅仅强调功能的强大,更注重用户体验。其采用了用户友好的 Web 界面,使得开发者能够直观、轻松地查看监控信息,而无需深入了解底层实现。这对于非运维人员来说是一个巨大的优势,因为他们无需花费大量时间学习复杂的监控工具或命令行参数。这种直观的设计有助于提高团队的整体效率,使得更多关注点能够集中在业务逻辑和应用程序的开发上。


3、管理功能

SpringBoot-Admin 不仅仅是一个监控工具,它还提供了一系列强大的管理功能。通过 SpringBoot-Admin,开发者可以轻松地对应用程序进行管理操作,例如启动、关闭、重启等。这些功能的引入简化了部分运维工作,使得开发团队能够更加便捷地维护应用程序的运行状态。特别是在一些紧急情况下,通过 SpringBoot-Admin 的管理功能,运维人员可以快速采取措施,及时恢复服务,减少了故障对业务的影响。


4、客户端异常信息定位

SpringBoot-Admin 不仅关注整体性能和健康状况,还专注于单个客户端的异常信息定位。通过详细的异常堆栈、性能指标和日志,SpringBoot-Admin可以帮助开发者迅速定位和修复特定客户端的问题。这对于系统中复杂的微服务架构尤为重要,因为它允许开发者更有针对性地处理异常情况,提高了系统的可维护性。


5、报警与通知机制

SpringBoot-Admin 提供了灵活且可定制的报警与通知机制。通过配置合适的报警规则,当应用程序达到设定的异常条件时,SpringBoot-Admin能够及时发送通知,通常包括邮件、短信或即时消息。这种主动的异常通知机制有助于团队在问题发生时能够第一时间获知,进一步缩短了故障响应的时间,提高了系统的可用性。


6、总结

SpringBoot-Admin作为一款优秀的监控与管理工具,不仅在实时监控、界面友好、管理功能等方面表现出色,更为开发者提供了全方位的支持,助力构建更为稳定、高效的 Spring Boot 应用。其强大的功能和易用的界面使得监控与管理变得更加轻松,为开发者提供了更好的开发体验。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/234441.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringSecurity完整认证流程(包含自定义页面和自定义登录逻辑)

认证基本流程图&#xff1a; 1. 用户发起表单登录请求后&#xff0c;首先进入UsernamePasswordAuthenticationFilter ​ 在 UsernamePasswordAuthenticationFilter 中根据用户输入的用户名、密码构建了 UsernamePasswordAuthenticationToken&#xff0c;并将其交给 Authentic…

智能分析网关V4太阳能风光互补远程视频智能监控方案

一、背景需求 在一些偏远地区&#xff0c;也具有视频监控的需求。但是这类场景中&#xff0c;一般无法就近获取市电&#xff0c;如果要长距离拉取市电&#xff0c;建设的成本非常高且长距离传输有安全隐患&#xff0c;因此风光互补远程视频监控方案的需求也较多。利用风光电转化…

React Native 桥接原生实现 JS 调用原生方法

一、为什么需要桥接原生 为了满足在React 层无法实现的需求 复杂高性能的组件&#xff1a;复杂表格、视频播放原生层开发能力&#xff1a;传感器编程、widget平台属性&#xff1a;系统信息、设备信息对接第三方应用&#xff1a;相机、相册、地图 真实的开发过程中是不可能完…

开放平台系统架构设计

一、概述 背景与目标 本开放平台旨在构建一个可扩展、高可用的生态体系&#xff0c;通过提供统一标准的API接口和SDK工具包&#xff0c;让第三方开发者能够安全、高效地接入我们的服务和资源&#xff0c;实现业务的互联互通。 定位与功能描述 系统主要包含用户认证授权、资…

ffmpeg.c(4.3.1)源码剖析

文章目录 前言一、FFmpeg 源码结构图二、ffmpeg.h 头文件详解三、main 函数主要流程分析四、ffmpeg_parse_options1、命令行例子①、解析命令行 split_commandline()②、parse_optgroup()③、MATCH_PER_XXX_OPT() 2、vf 选项解析①、filters②、vf 术语③、avfilter_graph_pars…

阿里云RDMA通信库XRDMA论文详解

RDMA(remote direct memory access)即远端直接内存访问&#xff0c;是一种高性能网络通信技术&#xff0c;具有高带宽、低延迟、无CPU消耗等优点。RDMA相比TCP在性能方面有明显的优势&#xff0c;但在编程复杂度上RDMA verbs却比TCP socket复杂一个数量级。 开源社区和各大云厂…

微信扫码进入小程序特定页面

小程序配置 开发 - 开发管理 - 开发设置-普通链接二维码打开小程序 配置好的截图 如下&#xff1a;二维码规则建议是自己的域名 /mini/ 功能页面 pages/index/index 是为了方便跳转其他页面 记得把校验文件发给后端 web 端处理 二维码格式为&#xff1a;二维码规则/功能页…

怎么一边讲PPT一边录视频 如何一边录制PPT一边录制人像 录屏软件免费录屏 PPT录制怎么录制

随着新媒体技术的发展&#xff0c;短视频和直播越来越火。越来越多的小伙伴加入了视频制作的大军&#xff0c;那么你想知道怎么一边讲PPT一边录视频&#xff0c;如何一边录制PPT一边录制人像吗&#xff1f; 一、怎么一边讲PPT一边录视频 我们可以借助PPT本身自带的屏幕录制功能…

如何绘制PAD图和N-S图(详细步骤)

在软件详细设计阶段有四个要点&#xff1a;N-S图&#xff0c;PAD图&#xff0c;程序流程图&#xff0c;PDL语言 对于程序流程图的绘制较简单&#xff0c;想详细了解可以看&#xff1a; 程序流程图详解&#xff08;六大部分&#xff09; (zhihu.com) 对于PDL语言这里也不是重点…

Apache Doris (六十一): Spark Doris Connector - (1)-源码编译

🏡 个人主页:IT贫道-CSDN博客 🚩 私聊博主:私聊博主加WX好友,获取更多资料哦~ 🔔 博主个人B栈地址:豹哥教你学编程的个人空间-豹哥教你学编程个人主页-哔哩哔哩视频 目录 1. Spark Doris Connector

Lava多模态大模型调试(基于vscode框架)

文章目录 前言一、整体概括二、launch.json文件配置三、调试展示前言 之前博客这里介绍LLava1.5多模态大模型的安装、训练、预测等。但对于你想查看源码或多或少都有些麻烦,也不利于代码调试。基于此,本文是一篇基于vscode框架调试llava大模型的教程。 一、整体概括 我是在…

基于net6的asp.net core webapi项目打包为docker镜像,并推送至私有镜像仓库harbor中

基于net6的asp.net core webapi项目打包为docker镜像&#xff0c;并推送至私有镜像仓库harbor中 0、环境说明1、打包步骤1.1 创建Asp.net core WebApi项目1.2 在Asp.net core WebApi项目根目录下创建Dockerfile文件1.3 在子系统Ubuntu20.04.4中通过docker build生成docker镜像1…

处理机调度与死锁

目录 进程调度算法先来先服务调度算法FCFS最短作业优先调度算法SJF最高优先级调度算法***HPF***高响应比优先调度算法 ***HRRN***时间片轮转调度算法***RR***多级队列调度算法MFQ 进程调度算法 进程调度算法也称为CPU调度算法 当 CPU 空闲时&#xff0c;操作系统就选择内存中…

Cacti 监控工具 | 因严重 SQL 注入漏洞而受到攻击

攻击者可以利用该问题访问Cacti数据库中的所有数据&#xff1b;并且&#xff0c;当与先前的漏洞链接时&#xff0c;它会启用 RCE。 用于监控网络性能的基于 Web 的 Cacti 开源框架中存在一个严重漏洞&#xff0c;该漏洞为攻击者提供了泄露 Cacti 整个数据库内容的方法&#xf…

windows同时安装mysql5.0和8.0步骤(完美测试)

mysql5.0和mysql8.0配置如下 1.把如下配置复制下替换到my.ini中 mysql5.0配置如下 [mysqld] # 设置3306端口 port3306 # 设置mysql的安装目录 basedirF:\mysql-5.7.38 # 设置mysql数据库的数据的存放目录 datadirF:\mysql-5.7.38\data # 允许最大连接数 max_connections200 #…

使用curl命令在Linux中进行HTTP请求

在Linux中&#xff0c;curl是一个非常强大的命令行工具&#xff0c;用于发送HTTP请求。它允许用户发送各种类型的HTTP请求&#xff0c;如GET、POST、PUT、DELETE等&#xff0c;并能够处理响应数据。 首先&#xff0c;确保您的Linux系统已经安装了curl。如果未安装&#xff0c;…

Java18:网络编程

一.对象序列化&#xff1a; 1.对象流&#xff1a; ObjectInputStream 和 ObjectOutputStream 2.作用&#xff1a; ObjectOutputSteam&#xff1a;内存中的对象-->存储中的文件&#xff0c;通过网络传输出去 ObjectInputStream:存储中的文件&#xff0c;通过网络传输出去…

数据结构-函数题

6-2.求二叉树的高度 本题要求给定二叉树的高度。 函数接口定义&#xff1a; int GetHeight( BinTree BT ); typedef struct TNode *Position; typedef Position BinTree; struct TNode{ElementType Data;BinTree Left;BinTree Right; }; 要求函数返回给定二叉树BT的高度值…

C++学习笔记——string类和new函数

目录 string类 1.功能增强 1.1 子字符串提取 1.2 字符串拼接 1.3 大小写转换 1.4 字符串比较 2.性能优化 3.使用示例 下面是一个简单的使用示例&#xff0c;展示了如何使用改进后的String类&#xff1a; NEW函数 2.1NEW函数的基本用法 2.2NEW函数的注意事项 2.3避…

linux系统基础知识-基础IO

IO 概念引入位图的概念IO的系统调用函数openwriteread()close简单使用样例&#xff1a; 文件描述符fd默认文件流stdin/stdout/stderr文件描述符的分配规则 重定向的概念输出重定向输入重定向追加重定向dup2()系统调用总结 文件缓冲区深入理解缓冲区的概念输出缓冲区部分代码解释…