美文网首页数据架构spring cloudspring boot
使用 Spring Boot Admin 监控应用(随记)

使用 Spring Boot Admin 监控应用(随记)

作者: 简楼 | 来源:发表于2021-04-27 18:19 被阅读0次

    前言

    生产上对 Web 应用 的监控是十分必要的。
    对于 Spring Boot 应用来说我们可以通过一个轻量级的监控工具 Spring Boot Admin (SBA) 来进行监控。

    Spring Boot Admin 功能

    • 显示健康状况,显示应用度量指标详情,例如
      • JVM和内存指标
      • micrometer度量
      • 数据源指标
      • 缓存指标
    • 显示构建信息编号
    • 关注并下载日志文件
    • 下载 heapdump
    • 查看jvm系统和环境属性
    • 查看 Spring Boot 配置属性
    • 支持 Spring Cloud 的环境端点和刷新端点 ``
    • 支持 K8s 易用的日志级别管理
    • JMX-beans交互
    • 查看线程转储
    • 查看http跟踪
    • 查看auditevents
    • 查看http-endpoints
    • 查看计划任务
    • 查看和删除活动会话(使用 Spring Session
    • 查看Flyway/Liquibase数据库迁移
    • 状态变更通知(通过电子邮件,Slack,Hipchat等,支持钉钉)
    • 状态更改的事件日志(非持久化)

    创建admin-server模块

    • 在pom.xml中添加相关依赖:
    <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>
    
    • 在application.yml中进行配置:
    spring:
      application:
        name: admin-server
    server:
      port: 9301
    
    • 在启动类上添加@EnableAdminServer来启用admin-server功能:
    @EnableAdminServer
    @SpringBootApplication
    public class AdminServerApplication {
        public static void main(String[] args) {
            SpringApplication.run(AdminServerApplication.class, args);
        }
    }
    

    创建admin-client模块

    *在pom.xml中添加相关依赖:

    <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>
    
    • 在application.yml中进行配置:
    spring:
      application:
        name: admin-client
      boot:
        admin:
          client:
            url: http://localhost:9301 #配置admin-server地址
    server:
      port: 9305
    management:
      endpoints:
        web:
          exposure:
            include: '*'
      endpoint:
        health:
          show-details: always
    logging:
      file: admin-client.log #添加开启admin的日志监控
    
    • 启动admin-server和admin-client服务。

    监控信息演示

    • 访问如下地址打开Spring Boot Admin的主页:http://localhost:9301

      image.png
    • 点击wallboard按钮,选择admin-client查看监控信息;

    • 监控信息概览;


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


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


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


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


      image.png
    • 查看日志信息,需要添加以下配置才能开启;

    logging:
      file: admin-client.log #添加开启admin的日志监控
    
    image.png
    • 查看JVM信息;


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


      image.png
    • 查看HTTP跟踪信息;


      image.png

    结合注册中心使用

    Spring Boot Admin结合Spring Cloud 注册中心使用,只需将admin-server和注册中心整合即可,admin-server 会自动从注册中心获取服务列表,然后挨个获取监控信息。

    相关文章

      网友评论

        本文标题:使用 Spring Boot Admin 监控应用(随记)

        本文链接:https://www.haomeiwen.com/subject/pxjprltx.html