当前位置: 首页 > news >正文

SpringBoot Admin

前言

Spring Boot Admin 是一个管理和监控 Spring Boot 应用程序的开源项目,它提供了一个简洁的 Web 界面来监控 Spring Boot 应用程序的状态和各种运行时指标。Spring Boot Admin 可以帮助开发者快速了解应用程序的状态,并快速定位错误或性能问题。下面是 Spring Boot Admin 的一些主要特点:

1. 界面友好:Spring Boot Admin 提供了一个漂亮、干净、响应式的 Web 界面,支持数据实时更新和各种交互式组件。

2. 实时监控:Spring Boot Admin 可以实时监控应用程序的运行状态、性能指标、日志等信息,并提供历史记录和图表展示。

3. 健康检查:Spring Boot Admin 可以检查应用程序的健康状况,并提供警报和通知功能。

4. 远程管理:Spring Boot Admin 可以通过远程 HTTP 调用管理和监控远程应用程序,可以方便地管理多个服务器上的应用程序。

5. 自适应:Spring Boot Admin 支持自适应布局管理,可以根据屏幕分辨率和显示器大小动态调整页面布局。

6. 支持扩展:Spring Boot Admin 提供了灵活的 API 和事件机制,开发者可以自定义添加监控指标、扩展界面、添加连接器等。

总之,Spring Boot Admin是一个功能强大、易用性强的Spring Boot应用程序管理和监控工具,非常适合用于管理和监控Spring Boot应用程序的生命周期,特别是在分布式系统和微服务架构中使用。

Spring Boot Admin 的组成

  1. Spring Boot Actuator:Spring Boot Actuator 是 Spring Boot 提供的一个功能强大的监控和管理扩展,用于监控应用程序的各种指标、健康状况和环境属性。Admin Client 依赖于 Spring Boot Actuator 来收集和提供应用程序的监控数据。
  2. Spring Boot Admin Server:Spring Boot Admin Server 是 Spring Boot Admin 的核心组件,负责提供 Web 界面和 API,以监控注册的 Spring Boot 应用程序。它是一个 Spring Boot 应用程序,通过依赖于 Spring Boot Starter Admin 自动配置。
  3. Spring Boot Admin Client:Spring Boot Admin Client 是需要在要监控的 Spring Boot 应用程序中集成的客户端库。它负责将应用程序的信息注册到 Spring Boot Admin Server,并暴露一些端点供 Admin Server 使用。
  4. Web UI(用户界面):Spring Boot Admin 提供了一个用户友好的 Web 界面,通过该界面可以查看注册的应用程序的状态、详细信息、日志和环境属性等。 界面通常包括仪表板、应用程序列表、详细信息页等。
  5. 事件通知:Spring Boot Admin 支持事件通知机制,可以通过事件监听器获取应用程序的状态变化、健康状态变化等事件。这使得可以通过邮件、Slack 等方式实现对应用程序状态的实时告警。

搭建Spring Boot Admin

   1、Admin Server

        主要依赖:

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

        启动类添加注解: 

      2、Admin Client

               主要依赖:

        <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><version>2.7.1</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency>

        配置文件yml:

server:port: 8082spring:boot:admin:client:url: http://localhost:8081 #指向注册server地址
management:endpoint:health:show-details: always #健康端点总是显示详细信息endpoints:web:base-path: /high #地址映射 actuator映射成 highpath-mapping:health: heal #自定义health接口exposure:include: health,info,metrics #开放监控端口,“*”慎用

        开放端点注意:        

        在生产环境上,为了安全考虑,通常只有一部分端点被对外开放,可以按需开放以下几个常用的端点:

         /actuator/health: 健康检查端点,用于检查应用程序的健康状态。这个端点通常是必须的,可以对外开放。

         /actuator/info: 信息端点,用于暴露关于应用程序的自定义信息。可以对外开放,但需要确保不会泄漏敏感信息。

         /actuator/metrics: 指标端点,提供应用程序的各种指标数据(如内存使用、CPU使用等)。可以对外开放,但可以进行访问控制,只允许授权用户或服务访问。

         /actuator/env: 环境变量端点,展示应用程序的环境变量信息。通常情况下,这个端点不应该对外开放,以防止泄漏敏感信息。

         禁用安全防护机制:

    @Overrideprotected void configure(HttpSecurity http) throws Exception {http.authorizeRequests().anyRequest().permitAll().and().csrf().disable();}
        3、启动顺序:先启动Server再启动Client

http://www.lryc.cn/news/239978.html

相关文章:

  • Java基础-----正则表达式
  • 基于 Eureka 的 Ribbon 负载均衡实现原理【SpringCloud 源码分析】
  • 如何用CHAT解释文章含义?
  • 创作4周年
  • 《opencv实用探索·一》QT+opencv实现图片拼接和Mat转QImage
  • Apahce虚拟主机配置演示
  • 加班做报表被嘲低效!快用大数据分析工具
  • 详解——菱形继承及菱形虚拟继承
  • 路由的控制与转发原理
  • ios qt开发要点
  • 免费小程序商城搭建之b2b2c o2o 多商家入驻商城 直播带货商城 电子商务b2b2c o2o 多商家入驻商城 直播带货商城 电子商务
  • ChatGPT最强?文心一言与ChatGPT对比
  • 算法通关村第十二关|青铜|字符串转换整数
  • CSS实现空心的“尖角”
  • 算法 全排列的应用
  • 环境配置|GitHub——如何在github上搭建自己写的网站
  • Windows系统中curl和wget命令下载说明
  • 山西电力市场日前价格预测【2023-11-24】
  • 说说你对 shell 的理解以及常见的命令?
  • 数据结构之双向带头循环链表函数功能实现与详细解析
  • SpringBoot_websocket实战
  • 香港科技大学广州|机器人与自主系统学域博士招生宣讲会—同济大学专场!!!(暨全额奖学金政策)
  • python基于GCN(图卷积神经网络模型)和LSTM(长短期记忆神经网络模型)开发构建污染物时间序列预测模型
  • SpringMVC问题
  • 【Linux】Linux的常用基本指令
  • 气候变化和人类活动对中国植被固碳的贡献量化数据月度合成产品
  • 定位鼠标悬浮才出现的元素
  • 【css/vue】使用css变量,在同一个页面根据不同情况改变字号等样式
  • 在springboot中实现WebSocket协议通信
  • 云原生Docker系列 | Docker私有镜像仓库公有镜像仓库使用