• springboot监控


    为什么要关心springboot监控?

    springboot作为微服务框架,除了它强大的快速开发功能外,还有就是它提供了actuator模块,引入该模块能够自动为springboot应用提供一系列用于监控的端点,而且springcloud在实现各个微服务组件时,对其做了扩展,比如为api网关组件zuul提供了/routes端点来返回路由信息。
    在没有引入其他依赖之前,这些端点的内容较为简单,后续引入springcloud的各个组件后,返回值会变得更加丰富。
    springboot引入actuator组件,我们可以通过http/jmx/ssh来查看springboot应用的配置、各种指标、健康程度等。

    依赖

    
        org.springframework.boot
        spring-boot-starter-actuator
        2.1.4.RELEASE
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    测试原生端点

    1、应用配置类

    帮助我们轻松获取一些spring应用配置报告,包括

    beans #springboot配置的bean信息
    configprops #所有@ConfigurationProperties注解的配置信息,如文件上传的最大允许配置等
    env
    mappings #输出通过注解@RequestMapping设置的url映射,可以通过它来查看url对应的controller
    
    • 1
    • 2
    • 3
    • 4

    2、度量指标类

    提供应用程序运行过程中一些快照信息,比如内存情况、http请求统计等

    metrics #springboot的性能指标,如已有内存、未占用内存等
    dump #获取某一时刻虚拟机线程栈信息,用来诊断系统问题
    health  #默认输出磁盘空间、数据源、redis、elasticsearch的健康诊断信息
    trace #http跟踪,能查看最近的http请求和响应。
    
    • 1
    • 2
    • 3
    • 4

    如访问http://localhost:8080/health,up表示健康,对象正常,down表示异常。
    在这里插入图片描述

    3、操作控制类

    endpoints.shutdown.enabled=true #关闭应用
    
    • 1

    只需要访问localhost:8080/shutdown就可以关闭应用,所以线上使用时,需要对其加入一定的保护机制,比如定制actuator的端点路径、整合spring security进行安全校验等。

    定制端点

    1、springboot2默认并不启动所有的监控,需要做如下配置:

    endpoints.default.web.enabled=true
    
    • 1

    2、只开启所需的端点

    endpoints.enabled=false
    endpoints.beans.enabled=true
    
    • 1
    • 2

    3、定制端点访问端口、访问路径来保护应用

    management.context-path=/manage
    management.port=8081 #出于安全考虑,不暴露端点的端口到外部,就需要应用本身的业务端口和端点端口不同
    management.port=-1 #关闭http端点
    
    • 1
    • 2
    • 3

    jconsole监控窗口

    在控制台调用java内置的jconsole来实现jmx监控。
    打开cmd,输入jconsole,选择应用
    在这里插入图片描述

  • 相关阅读:
    编写MQTTClient测试程序,和PC端运行的MQTT服务程序进行数据收发
    【云手机】数据安全如何保障?
    Qt使用Json
    java实现创建时间、修改时间自动生成
    定位服务器线程占用内存高
    将项目制作成Dcoker镜像并运行--DevOps学习第三章
    MySQL进阶
    开源大数据集群部署(十三)Ranger 集成Trino
    五年Java编程生涯,大专学历最终逆袭阿里,面试+学习+经历分享
    Haul truck运输卡车专为矿用设计
  • 原文地址:https://blog.csdn.net/m0_67394360/article/details/126515390