• SpringBoot和监控管理


    1 概述

    • 通过引入spring-boot-starter-actuator,可以使用SpringBoot为我们提供的准生产环境下的应用监控和管理功能。我们可以通过HTTP、JMX、SSH协议来进行操作,自动得到审计、健康以及指标信息等。

    • 监控和管理端点:

    端点名 描述
    autoconfig 所有自动配置信息
    auditevents 审计事件
    beans 所有Bean的信息
    configprops 所有配置属性
    dump 线程状态信息
    env 当前环境信息
    health 应用健康状况
    info 当前应用信息
    metrics 应用的各项指标
    mappings 应用@RequestMapping映射路径
    shutdown 关闭当前应用(默认关闭)
    trace 追踪信息(最新的http请求)

    2 SpringBoot整合actuator

    SpringBoot的版本是1.5.12.RELEASE

    2.1 引入spring-boot-starter-actuator的Maven坐标

    <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>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <scope>runtime</scope>
        <optional>true</optional>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
    

    2.2 修改application.propreties

    # 关闭安全
    management.security.enabled=false
    #远程关闭应用
    endpoints.shutdown.enabled=true
    
    info.app.id=hello
    info.app.version=1.0
    

    2.3 测试

    • 应用启动后,如果需要远程关闭应用,只需要使用POST请求http://localhost:8080/shutdown即可。

    3 定制端点

    • 定制端点一般通过endpoints+端点名+属性名来设置。
    # 关闭安全
    management.security.enabled=false
    #远程关闭应用
    endpoints.shutdown.enabled=true
    
    info.app.id=hello
    info.app.version=1.0
    
    # 修改端点
    #endpoints.beans.id=mybean
    #endpoints.beans.path=/bean
    
    # 禁用端点
    #endpoints.beans.enabled=false
    
    # 关闭所有的端点,并启用某个端点
    #endpoints.enabled=false
    #endpoints.beans.enabled=true
    
    # 定制所有端点的根路径
    management.context-path=/manage
    # 定制所有端点的端口,如果是-1,就表示不能访问
    management.port=8081
    
  • 相关阅读:
    JavaScript中函数和构造函数的区别
    如何使用less(变量,混合,匹配,运算,嵌套...)
    sublime text3 最常用的快捷键及插件
    ReentrantLock实现原理
    揭密FutureTask
    消息队列设计精要(转)
    漫谈MySql中的事务
    浅析Spring AOP
    理解java动态代理
    理解tomcat之搭建简易http服务器
  • 原文地址:https://www.cnblogs.com/xuweiweiwoaini/p/13719572.html
Copyright © 2020-2023  润新知