springboot之Actuator

article/2025/11/9 16:59:48

1、Actuator 介绍

Actuator是Springboot提供的用来对应用系统进行自省和监控的功能模块,借助于Actuator开发者可以很方便地对应用系统某些监控指标进行查看、统计等。

Actuator 的核心是端点 Endpoint,它用来监视应用程序及交互,spring-boot-actuator 中已经内置了非常多的 Endpoint(health、info、beans、metrics、httptrace、shutdown等等),同时也允许我们自己扩展自己的 Endpoints。每个 Endpoint 都可以启用和禁用。要远程访问 Endpoint,还必须通过 JMX 或 HTTP 进行暴露,大部分应用选择HTTP。

2、Actuator 使用

2.1、依赖

        <!-- 引入Actuator监控依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

2.2、配置

需要注意的是 Spring Boot 2.0 相对于上个版本, Actuator 发生很多变化,keys 的配置改变如下:

旧的属性新的属性
endpoints.<id>.*management.endpoint.<id>.*
endpoints.cors.*management.endpoints.web.cors.*
endpoints.jmx.*management.endpoints.jmx.*
management.addressmanagement.server.address
management.context-pathmanagement.server.servlet.context-path
management.ssl.*management.server.ssl.*
management.portmanagement.server.port

application.yml 配置

 management:
  endpoints:
    # 暴露 EndPoint 以供访问,有jmx和web两种方式,exclude 的优先级高于 include
    jmx:
      exposure:
        exclude: '*'
        include: '*'
    web:
      exposure:
      # exclude: '*'
        include: ["health","info","beans","mappings","logfile","metrics","shutdown","env"]
      base-path: /actuator  # 配置 Endpoint 的基础路径
      cors: # 配置跨域资源共享
        allowed-origins: http://example.com
        allowed-methods: GET,POST
    enabled-by-default: true # 修改全局 endpoint 默认设置
  endpoint:
    auditevents: # 1、显示当前引用程序的审计事件信息,默认开启
      enabled: true
      cache:
        time-to-live: 10s # 配置端点缓存响应的时间
    beans: # 2、显示一个应用中所有 Spring Beans 的完整列表,默认开启
      enabled: true
    conditions: # 3、显示配置类和自动配置类的状态及它们被应用和未被应用的原因,默认开启
      enabled: true
    configprops: # 4、显示一个所有@ConfigurationProperties的集合列表,默认开启
      enabled: true
    env: # 5、显示来自Spring的 ConfigurableEnvironment的属性,默认开启
      enabled: true
    flyway: # 6、显示数据库迁移路径,如果有的话,默认开启
      enabled: true
    health: # 7、显示健康信息,默认开启
      enabled: true
      show-details: always
    info: # 8、显示任意的应用信息,默认开启
      enabled: true
    liquibase: # 9、展示任何Liquibase数据库迁移路径,如果有的话,默认开启
      enabled: true
    metrics: # 10、展示当前应用的metrics信息,默认开启
      enabled: true
    mappings: # 11、显示一个所有@RequestMapping路径的集合列表,默认开启
      enabled: true
    scheduledtasks: # 12、显示应用程序中的计划任务,默认开启
      enabled: true
    sessions: # 13、允许从Spring会话支持的会话存储中检索和删除(retrieval and deletion)用户会话。使用Spring Session对反应性Web应用程序的支持时不可用。默认开启。
      enabled: true
    shutdown: # 14、允许应用以优雅的方式关闭,默认关闭
      enabled: true
    threaddump: # 15、执行一个线程dump
      enabled: true
    # web 应用时可以使用以下端点
    heapdump: # 16、    返回一个GZip压缩的hprof堆dump文件,默认开启
      enabled: true
    jolokia: # 17、通过HTTP暴露JMX beans(当Jolokia在类路径上时,WebFlux不可用),默认开启
      enabled: true
    logfile: # 18、返回日志文件内容(如果设置了logging.file或logging.path属性的话),支持使用HTTP Range头接收日志文件内容的部分信息,默认开启
      enabled: true
    prometheus: #19、以可以被Prometheus服务器抓取的格式显示metrics信息,默认开启
      enabled: true

基本路径

  1. 所有 endpoints 默认情况下都已移至 /actuator。就是多了跟路径 actuator ;

  2. 上个版本中的 management/context-path: 和 management/port: 改为 :

    management:server:port: 8004servlet:context-path: /xxx # 只有在设置了 management.server.port 时才有效 
    

    另外,您还可以使用新的单独属性 management.endpoints.web.base-path 为管理端点设置基本路径。

    例如,如果你设置management.server.servlet.context-path=/managementmanagement.endpoints.web.base-path=/application,你就可以在下面的路径到达终点健康:/management/application/health

    如果你想恢复 1.x 的行为(即具有/health代替/actuator/health),设置以下属性:management.endpoints.web.base-path=/

2.3、ENDPOINTS

1.X 的时候属性:

HTTP 方法路径描述
GET/autoconfig提供了一份自动配置报告,记录哪些自动配置条件通过了,哪些没通过
GET/configprops描述配置属性(包含默认值)如何注入Bean
GET/beans描述应用程序上下文里全部的Bean,以及它们的关系
GET/dump获取线程活动的快照
GET/env获取全部环境属性
GET/env/{name}根据名称获取特定的环境属性值
GET/health报告应用程序的健康指标,这些值由HealthIndicator的实现类提供
GET/info获取应用程序的定制信息,这些信息由info打头的属性提供
GET/mappings描述全部的URI路径,以及它们和控制器(包含Actuator端点)的映射关系
GET/metrics报告各种应用程序度量信息,比如内存用量和HTTP请求计数
GET/metrics/{name}报告指定名称的应用程序度量值
POST/shutdown关闭应用程序,要求endpoints.shutdown.enabled设置为true
GET/trace提供基本的HTTP请求跟踪信息(时间戳、HTTP头等)

2.0 部分更改:

1.x 端点2.0 端点(改变)
/actuator不再可用。 但是,在 management.endpoints.web.base-path 的根目录中有一个映射,它提供了到所有暴露端点的链接。
/auditeventsafter参数不再需要
/autoconfig重命名为 /conditions
/docs不再可用
/health现在有一个 management.endpoint.health.show-details 选项 neveralwayswhen-authenticated,而不是依靠 sensitive 标志来确定 health 端点是否必须显示全部细节。 默认情况下,/actuator/health公开并且不显示细节。
/trace重命名为 /httptrace

默认端点 path 前面多了一级 /actuator 。

同时注意只有端点/health/info端点是暴露的。

PropertyDefault
management.endpoints.jmx.exposure.exclude 
management.endpoints.jmx.exposure.include*
management.endpoints.web.exposure.exclude 
management.endpoints.web.exposure.includeinfo, health
  1. 您可以按如下方式公开所有端点:management.endpoints.web.exposure.include=*
  2. 您可以通过以下方式显式启用/shutdown端点:management.endpoint.shutdown.enabled=true
  3. 要公开所有(已启用)网络端点除env端点之外:
management.endpoints.web.exposure.include=*
management.endpoints.web.exposure.exclude=env

例如:

我现在开启所有的端点:

management:endpoints:web:exposure:include: "*" # * 在yaml 文件属于关键字

执行 localhost:${port}/actuator,可以看到所有可以执行查看的端点监控的 Url,然后我们尝试执行关闭应用进程的指令:shutdown

image

端点格式

  1. /actuator/mappings 端点大改变
    JSON 格式已经更改为现在正确地包含有关上下文层次结构,多个DispatcherServlets,部署的 Servlet 和 Servlet 过滤器的信息。详情请参阅#9979。
    Actuator API 文档的相关部分提供了一个示例文档。

  2. /actuator/httptrace 端点大改变
    响应的结构已经过改进,以反映端点关注跟踪 HTTP 请求 - 响应交换的情况

参考文章

Spring Boot 2.0 中使用 Actuator


http://chatgpt.dhexx.cn/article/gkSpGvTj.shtml

相关文章

ActivitiListener

ActivitiListener 目录概述需求&#xff1a; 设计思路实现思路分析1.ActivitiListener2.Activity3.Gateway5.FieldExtension IOSpecification 参考资料和推荐阅读 Survive by day and develop by night. talk for import biz , show your perfect code,full busy&#xff0c;sk…

SolidWorks2016软件,SW2010-2016.Activator.GUI.SSQ激活闪退解决办法:

SolidWorks2016软件&#xff0c;SW2010-2016.Activator.GUI.SSQ激活闪退解决办法&#xff1a; 解决方案&#xff1a; 原贴&#xff1a; https://xcshare.cn/other/1033.html

Actuator

1&#xff0c;简介 Actuator’ ktʃʊˌeɪtə是 Spring Boot 提供的对应用系统的自省和监控的 集成功能&#xff0c;可以对应用系统进行配置查看、相关功能统计等。在 Spring Cloud 中主要是完成 微服务的监控&#xff0c;完成监控治理。可以查看微服务间的数据处理和调用&…

Spring boot——Actuator 详解

一、什么是 Actuator Spring Boot Actuator 模块提供了生产级别的功能&#xff0c;比如健康检查&#xff0c;审计&#xff0c;指标收集&#xff0c;HTTP 跟踪等&#xff0c;帮助我们监控和管理Spring Boot 应用。 这个模块是一个采集应用内部信息暴露给外部的模块&#xff0c…

Spring Boot Actuator详解

Actuator简介 什么是Spring Boot Actuator&#xff1f; Spring Boot Actuator 模块提供了生产级别的功能&#xff0c;比如健康检查&#xff0c;审计&#xff0c;指标收集&#xff0c;HTTP跟踪等&#xff0c;帮助我们监控和管理Spring Boot应用。这个模块是一个采集应用内部信…

C# 反射之Activator用法举例

概述 程序运行时&#xff0c;通过反射可以得到其它程序集或者自己程序集代码的各种信息&#xff0c;包括类、函数、变量等来实例化它们&#xff0c;执行它们&#xff0c;操作它们&#xff0c;实际上就是获取程序在内存中的映像&#xff0c;然后基于这个映像进行各种操作。 Acti…

将IPA放到服务器提供下载

2015年12月15日 09:45:16 LC_畅 阅读数&#xff1a;3696 &#xff0a; 上传到服务器我们需要两个文件&#xff0c;一个ipa和一个 plist文件 &#xff0a; 注意plist文件和ipa包的名字必须要相同&#xff08;最好取名英文&#xff09; 第一步&#xff1a;把ipa文件放到你们服务…

ipa文件包获取服务器地址,iOS获取App ipa包以及资源文件

要获得线上APP的ipa文件&#xff0c;现在有以下几种方案 1.通过PP助手下载安装到手机的应用 2.通过iTools助手下载安装到手机的应用 3.通过Apple Configurator 2(Mac商店)获取 前两种方案网上的教程很多&#xff0c;这里只介绍第三种方案 首先 去Mac上的App Store下载Apple Con…

AppleStore 原始ipa文件提取

//TODO Apple Configurator 2提取ipa文件_饿到饱的博客-CSDN博客安装Apple Configurator 2从Mac AppStore安装Apple Configurator 2下载ipa打开后连接设备&#xff0c;选中设备点击添加&#xff0c;如果没登录就登录Apple ID&#xff0c;登录后会把你在AppStore下过的应用都列…

获取ipa文件下载链接(appstore下载链接)

获取apptore下载链接 所需工具: 一台越狱的iphone 抓包工具(fiddler或burp等) 步骤 1、ios10以下的版本,越狱之后下载插件ssl kill就可对appstore进行抓包 2、ios11以后的版本,越狱后要想访问appstore还需appstore++插件 3、打开appstore,找到要下载的软件,点击下…

Mac 电脑下载 AppStore 中的 ipa 软件包详细流程

附&#xff1a;iPhone 移除描述文件详细步骤&#xff08;Apple Configurator 2&#xff09; 1、Mac 电脑中安装 Apple Configurator 2 软件。 2、电脑连接手机&#xff0c;并信任&#xff0c;在所有设备中&#xff0c;选中设备&#xff0c;然后点击顶部的加号&#xff0c;选…

关于直接下载第三方IPA应用分发平台之蒲公英的研究

目前基于第三方应用分发的平台比较常用的就属蒲公英、fir等&#xff0c;在我们提交到平台后&#xff0c;我们可以通过扫描应用二维码来下载&#xff0c;比如蒲公英平台如下&#xff1a; 那么以上是非常普通的一个操作过程&#xff0c;问题来了&#xff1a;如何直接在电脑端下载…

ipa在线安装搭建_GBox:一款ipa签名安装下载神器

(主要功能:ipa签名安装、ipa安装包下载) 最新版使用教程点这里,并免费附送有效的企业证书: Alex.Leung:GBox免越狱签名安装IPA教程​zhuanlan.zhihu.com 一、推荐理由 让我们对市面上主流ipa安装工具作个对比: Shu: 付费应用,并且得配合捷径脚本使用JSBox:付费应用,…

苹果iPA游戏软件资源下载网站

苹果iPA游戏软件资源下载网站推荐&#xff0c;这篇文章我以比较公平的方式整理一下目前一些苹果iPA资源下载网站&#xff0c;每个网站的内容可以参考对应的截图&#xff0c;从而快速选择适合自己的资源站点。 1.iPA商店&#xff1a;https://ipa.store/ 2.Decrypt IPA Store&…

【已解决】ipa降级教学 苹果旧版APP下载

ipa降级教学 苹果旧版APP下载 平板有个软件新版本不好用&#xff0c;需要降级&#xff0c;所以出一个教学。教程基于一个旧版本下载的软件。 下载链接会放在这里&#xff0c;自行下载。使用前注册并登录. 安装包下载&#xff1a; 旧版APP下载软件: https://pan.baidu.com/s…

自建ipa下载服务器的方法(最简单,使用在线工具)

自建ipa下载服务非常复杂&#xff0c;首先要拥有域名&#xff0c;其实要用https&#xff0c;然后还要写plist那些&#xff0c;plist的语法还非常复杂&#xff0c;对于普通的ios开发者来说&#xff0c;自建下载服务非常麻烦&#xff0c;也没有必要。 因此&#xff0c;我们测试i…

输入下载页面链接自动获取ipa下载地址,支持本地下载,支持蒲公英和fir及绝大多数自定义下载页

IpaDownloadTool github地址 项目中使用的第三方:ALToastView、SGQRCode、BackButtonHandler Release版本 点击此处直接下载IpaDownloadTool安装包(ipa) 功能 此工具用来快捷下载/储存第三方来源的ipa支持蒲公英、fir下载页面拦截ipa地址、ipa下载支持其他网站自定义h5页…

下载应用 ipa 包,不妨试试这款开源工具

&#x1f447;&#x1f447;关注后回复 “进群” &#xff0c;拉你进程序员交流群&#x1f447;&#x1f447; 来源丨小集 https://mp.weixin.qq.com/s/89BXRtejOJbhuzt7xbIOAg 开发人员经常有这样一个需求&#xff0c;将目前应用的 ipa 包下载下来&#xff0c;做一些研究性工作…

无需越狱手机,下载越狱版本IPA的方法

这两天在看一些逆向反编译的知识&#xff0c;很多工具的使用都是针对砸壳的ipa包&#xff0c;所以在了解这一部分的前提就需要&#xff1a; 越狱手机&#xff0c;下载越狱的IPA文件。学会对正版IPA进行脱壳。 没有越狱手机又不会脱壳技术的我&#xff0c;找到了一种简单的方法…

VMware 虚拟机安装 xp 蓝屏解决方法

我们在创建虚拟机的时候&#xff0c;选择的是去创建一个默认的虚拟机&#xff0c;然后创建完成直接将系统装在了这个虚拟机中 而这&#xff0c;就是这个问题的所在&#xff0c;对于网上下载的 sp3_iso 系统来讲&#xff0c;是需要一个 ida 的硬盘&#xff0c;就是要将虚拟机的硬…