SpringBootAdmin极简教程

简介: SpringBoot应用可以通过Actuator来暴露应用运行过程中的各项指标,Spring Boot Admin通过这些指标来监控SpringBoot应用,然后通过图形化界面呈现出来。

简介

  • SpringBoot应用可以通过Actuator来暴露应用运行过程中的各项指标,Spring Boot Admin通过这些指标来监控SpringBoot应用,然后通过图形化界面呈现出来。

  • Spring Boot Admin不仅可以监控单体应用,还可以和Spring Cloud的注册中心相结合来监控微服务应用。

  • SpringBootAdmin是C/S架构,client端应用需要注册到server端,需要引入spring-boot-admin-starter-client,但是在SpringCloud微服务架构中,可以通过服务发现来注册,此时client的配置是非必须的。

  • SpringBootAdmin并不是Spring官方的项目,它是一家欧洲公司codecentric的开源项目。github地址:https://github.com/codecentric/spring-boot-admin

下面看几张server端的截图:


功能和特性

SpringBootAdmin主要是围绕Actuator来展开,主要为开发运维人员提供服务监控、
服务管理和报警。

服务监控

  • 应用上、下线状态

  • 监控应用运行过程中的概览信息;

  • 度量指标信息,比如JVM、Tomcat及进程信息;

  • 环境变量信息,比如系统属性、系统环境变量以及应用配置信息;

  • 查看所有创建的Bean信息;

  • 查看应用中的所有配置信息;

  • 查看JVM信息;

  • 查看可以访问的Web端点;

  • 查看HTTP跟踪信息

  • ......

服务管理

  • 动态日志级别更改
  • ......

报警

  • 发送监控邮件
  • 集成各种消息通知
  • ......

服务端

client注册到SpringBootAdmin-Server有两种方式,一种是client引入admin-client依赖,并在配置文件配置admin-server地址;一种是将爱大米将client和admin-server注册到相同的注册中心,通过服务发现将client注册到SpringBootAdmin-Server。本文中主要是演示第二种。

pom


<!-- admin-server -->
<dependency>
  <groupId>de.codecentric</groupId>
  <artifactId>spring-boot-admin-starter-server</artifactId>
  <version>${spring.boot.admin.version}</version>
</dependency>

配置

通过@EnableAdminServer注解开启Admin-Server,@EnableDiscoveryClient注解是将admin-server注册到nacos注册中心,admin-server自己也是一个可被监控的服务。

集群

SpringBootAdmin-Server 支持通过Hazelcast来实现集群的复制。本文档不展开讨论,一般来说SpringBootAdmin为非功能性服务,是否集群其实也不太重要。

客户端

声明式客户端

pom

<!-- SpringBoot Actuator -->
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>


<!-- spring-boot-admin-client -->
<dependency>
  <groupId>de.codecentric</groupId>
  <artifactId>spring-boot-admin-starter-client</artifactId>
  <version>2.4.3</version>
</dependency>

配置

spring.boot.admin.clietn.url:配置admin-server的地址
management.endpoints:actuator暴露的client端程序监控端点

通过注册中心发现

客户端仅需要添加Actuator的starter依赖,然后保证当前微服务应用和Admin-Server注册到同一注册中心即可。

若client服务添加了 context-path ,springBootAdmin-server端是无法通过注册中心监控的,解决办法是在Client端的配置文件中增加如下配置:

spring:
  cloud:
      discovery:
        server-addr: 127.0.0.1:8884
        metadata:
          management:
            context-path: ${server.servlet.context-path}/actuator
目录
相关文章
|
网络安全 网络虚拟化 数据安全/隐私保护
教程 - EasyConnect 的使用
下载和安装 自动安装组件失败,请手动 EasyConnectInstaller.exe EasyConnect下载链接 //后面的IP是服务端的IP地址,如果是域名直接在IP处填写域名 M5.0-M7.0版本: https://IP/com/install.exe M7.1之后版本: https://IP/com/EasyConnectInstaller.exe 登录异常,请下载 SSL VPN 诊断修复工具 进行修复 http://download.sangfor.com.cn/download/product/sslvpn/SangforHelperToolInstaller.exe 作
2851 0
|
6天前
|
关系型数据库 MySQL 数据库连接
Pgloader极简教程
pgloader 是一款强大的数据同步与迁移工具,专为将数据从多种来源迁移到 PostgreSQL 设计。它支持从文件(如 CSV)和多种数据库系统(如 SQLite、MySQL)迁移数据。pgloader 提供了丰富的安装选项,包括手动编译安装,适用于不同操作系统。使用上,既可以通过命令行直接操作,也可以通过配置文件进行复杂的数据迁移任务,如表结构和数据的同步。其高效性和灵活性使得数据库迁移变得更加简便和可靠。
33 4
|
6月前
|
Unix C语言 C++
|
6月前
|
缓存 监控 安全
Enge问题解决教程
Enge问题解决教程
74 0
|
自然语言处理 JavaScript
jedate教程
jedate教程
69 5
|
算法 应用服务中间件 数据库
这或许是我写的最全的BLAST教程
Basic local alignment search tool (BLAST) 包括:blastn, blastp, blastx, tblastn, tblastx等. 使用conda安装即可。
4241 0
|
存储 自然语言处理 搜索推荐
luncne 教程
Lucene是一套用于全文检索和搜寻的开源程序库,提供了一个简单却强大的应用程序接口(API),能够做全文索引和搜寻,在Java开发环境里Lucene是一个成熟的免费开放源代码工具
luncne 教程
|
Web App开发 缓存 网络协议
fildder教程
原文:fildder教程 转载地址:写得很不错的fildder教程   http://kb.cnblogs.com/page/130367/ Fiddler的基本介绍   Fiddler的官方网站:  www.fiddler2.com       Fiddler的官方帮助:http://docs.telerik.com/fiddler/knowledgebase/quickexec   Fiddler官方网站提供了大量的帮助文档和视频教程, 这是学习Fiddler的最好资料。
1535 0