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
目录
相关文章
|
监控 安全 Java
SpringBoot-开启Admin监控服务
本文介绍如何在SpringBoot项目中开启Admin监控服务。
644 0
|
监控 安全 Java
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(十一)spring-boot-admin 监控篇(2)springcloud 集成spring boot admin
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(十一)spring-boot-admin 监控篇(2)springcloud 集成spring boot admin
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(十一)spring-boot-admin 监控篇(2)springcloud 集成spring boot admin
|
11月前
|
缓存 监控 数据可视化
|
人工智能 监控 Java
SpringBoot实战(十二):集成 Spring Boot Admin 监控
SpringBoot实战(十二):集成 Spring Boot Admin 监控
870 0
SpringBoot实用开发篇第七章(监控技术)
SpringBoot实用开发篇第七章(监控技术)
|
监控 数据可视化 Java
springBoot:actuator&admin 图形可视化&spring 打包 (七)
本文介绍了Spring Boot Actuator及其图形化管理界面Spring Boot Admin的使用方法,包括依赖导入、服务端与客户端配置、以及如何打包为JAR和WAR文件并部署。通过这些步骤,可以实现应用的监控和管理功能。
794 0
|
Java Spring
Spring Boot Admin 查看 Client 日志
Spring Boot Admin 查看 Client 日志
590 0
|
Java Spring
Spring Boot Admin 授权配置
Spring Boot Admin 授权配置
348 0
|
数据采集 缓存 运维
Spring Boot Admin解析
之前文章我们讲解了Spring Boot提供的 Actuator 模块以实现应用的监控与管理。具体可参考:Spring Boot Actuator解析。Spring Boot Actuator基于http、jmx、ssh、telnet等组件实现应用程序的管理和监控。同时,提供了应用的审计(Auditing)、健康(health)状态信息、数据采集(metrics gathering)统计等监控运维的功能。除此之外,我们可以自定义扩展 Actuator 端点(Endpoint) 监控指标。
1672 0
|
监控 Java Nacos
Spring Boot Admin中无法监控到新服务注册的问题
Spring Boot Admin中无法监控到新服务注册的问题
893 1