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

Spring Boot Actuator使用

说明:本文介绍Spring Boot Actuator的使用,关于Spring Boot Actuator介绍,下面这篇博客写得很好,珠玉在前,我就不多介绍了。

  • Spring Boot Actuator

简单使用

项目里引入下面这个依赖

<!--Spring Boot Actuator依赖-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

增加以下配置,开放所有默认接口

management:endpoints:web:exposure:include: "*"

启动项目,浏览器输入:http://127.0.0.1:8081/actuator,可见以下接口信息

在这里插入图片描述

输入某个详细的接口名称,如:http://127.0.0.1:8081/actuator/health,查询详细的内容,如下:

在这里插入图片描述

配置文件中,添加配置,查看更详细的内容

management:# 开放所有接口endpoints:web:exposure:include: "*"# 单个接口设置endpoint:health:show-details: ALWAYS

如下:

在这里插入图片描述

手动自定义一个接口,如下:

import org.springframework.boot.actuate.endpoint.annotation.Endpoint;
import org.springframework.boot.actuate.endpoint.annotation.ReadOperation;
import org.springframework.stereotype.Component;@Component
@Endpoint(id = "my-actuator")
public class MyActuator {@ReadOperationpublic String hello() {return "Good Luck";}
}

其中@Endpoint(id = "my-actuator"),可以等同于@RequestMapping("/my-actuator"),浏览器敲:http://127.0.0.1:8081/actuator/,可见自定义的接口,如下:

在这里插入图片描述

浏览器输:http://127.0.0.1:8081/actuator/my-actuator,可见接口返回

在这里插入图片描述

使用场景

通过上面的简单使用,可以看到 Spring Boot Actuator与我们常写的接口是分别开的,有点像swagger。他可以有以下的使用场景:

  • 健康检查:默认的health就是用来扩展健康检查的,我们可以在代码里去扩展这个接口,来实现自己的健康检查操作;

  • 监控:可以写一些接口,接口内返回运行时系统内的一些指标,收集起来,观测运行时的情况;

  • 统计:如上,有些数据是“活”的,不存数据库或者日志里,服务停止,数据就消失了,这些数据就可以在接口里返回,用于统计;

  • 排查问题:有些数据可能是存在本地缓存,如某个Map中的,就可以写一个接口,返回该Map中的数据,用于排查问题;

  • ……

可以把Spring Boot Actuator当做玻璃窗,能观察到运行时系统的内部情况。当然,用常规的接口也能实现,但不方便,因为要考虑如何在鉴权框架中排出掉这些接口,以及如何对此类接口进行管理,这就不能像Spring Boot Actuator这样得心应手——Spring Boot Actuator可以通过配置文件来控制。

总结

本文介绍了Spring Boot Actuator的简单使用

相关文章:

Spring Boot Actuator使用

说明&#xff1a;本文介绍Spring Boot Actuator的使用&#xff0c;关于Spring Boot Actuator介绍&#xff0c;下面这篇博客写得很好&#xff0c;珠玉在前&#xff0c;我就不多介绍了。 Spring Boot Actuator 简单使用 项目里引入下面这个依赖 <!--Spring Boot Actuator依…...

【AI应用】免费的文本转语音工具:微软 Edge TTS 和 开源版 ChatTTS 对比

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】【读书与思考】【AI应用】 我试用了下Edge TTS&#xff0c;感觉还不错&#xff0c;不过它不支持克隆声音&#xff08;比如自己的声音&#xff09; 微软 Edge TTS 和 开源版 ChatTTS 都是免费的 文本转语音&…...

如何在 Qt 中添加和使用系统托盘图标

在 Qt 中实现系统托盘图标是一个常见的需求&#xff0c;尤其是在桌面应用程序中。系统托盘图标可以让应用程序在后台运行时仍然具有可见性&#xff0c;同时避免占用过多的桌面空间。本文将详细介绍如何在 Qt 项目中添加托盘图标&#xff0c;并通过资源系统&#xff08;.qrc 文件…...

【WB 深度学习实验管理】利用 Hugging Face 实现高效的自然语言处理实验跟踪与可视化

本文使用到的 Jupyter Notebook 可在GitHub仓库002文件夹找到&#xff0c;别忘了给仓库点个小心心~~~ https://github.com/LFF8888/FF-Studio-Resources 在自然语言处理领域&#xff0c;使用Hugging Face的Transformers库进行模型训练已经成为主流。然而&#xff0c;随着模型复…...

基础入门-网站协议身份鉴权OAuth2安全Token令牌JWT值Authirization标头

知识点&#xff1a; 1、网站协议-http/https安全差异&#xff08;抓包&#xff09; 2、身份鉴权-HTTP头&OAuth2&JWT&Token 一、演示案例-网站协议-http&https-安全测试差异性 1、加密方式 HTTP&#xff1a;使用明文传输&#xff0c;数据在传输过程中可以被…...

C语言基础系列【3】VSCode使用

前面我们提到过VSCode有多么的好用&#xff0c;本文主要介绍如何使用VSCode编译运行C语言代码。 安装 首先去官网&#xff08;https://code.visualstudio.com/&#xff09;下载安装包&#xff0c;点击Download for Windows 获取安装包后&#xff0c;一路点击Next就可以。 配…...

MySQL-5.7.44安装(CentOS7)

目录 1、下载安装包并解压 2、创建数据目录与日志目录 3、设置环境变量 4、刷新环境变量 5、执行初始化 6、创建配置文件目录 7、新建配置文件 8、为安装目录赋予可执行权限 9、创建服务启动脚本 10、启动服务并将启动脚本加入开机自启动 11、查看服务状态 12、创建…...

服务端与多客户端照片的传输,recv,send

一、照片传输 server.c /* * 文件名称&#xff1a;server.c * 创 建 者&#xff1a; * 创建日期&#xff1a;2025年02月07日 * 描 述&#xff1a; */ #include <stdio.h> #include <sys/types.h> /* See NOTES */ #include <sys/socket.h…...

JS实现灯光闪烁效果

在 JS中&#xff0c;我们可以实现灯光闪烁效果&#xff0c;这里主要用 setInterval 和 clearInterval 两个重要方法。 效果图 源代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>灯闪烁效果<…...

SpringCloud面试题----Nacos和Eureka的区别

功能特性 服务发现 Nacos&#xff1a;支持基于 DNS 和 RPC 的服务发现&#xff0c;提供了更为灵活的服务发现机制&#xff0c;能满足不同场景下的服务发现需求。Eureka&#xff1a;主要基于 HTTP 的 RESTful 接口进行服务发现&#xff0c;客户端通过向 Eureka Server 发送 HT…...

verilog练习:i2c slave 模块设计

文章目录 前言1. 结构2.代码2.1 iic_slave.v2.2 sync.v2.3 wr_fsm.v2.3.1 状态机状态解释 2.4 ram.v 3. 波形展示4. 建议5. 资料总结 前言 首先就不啰嗦iic协议了&#xff0c;网上有不少资料都是叙述此协议的。 下面将是我本次设计的一些局部设计汇总&#xff0c;如果对读者有…...

3.5 Go(特殊函数)

目录 一、匿名函数 1、匿名函数的特点&#xff1a; 2、匿名函数代码示例 2、匿名函数的类型 二、递归函数 1. 递推公式版本 2. 循环改递归 三、嵌套函数 1、嵌套函数用途 2、代码示例 3、作用域 & 变量生存周期 四、闭包 1、闭包使用场景 2、代码示例 五、De…...

Android的MQTT客户端实现

在 Android 平台上实现 MQTT 客户端的完整技术方案&#xff0c;涵盖基础实现、安全连接、性能优化和最佳实践&#xff1a; 一、技术选型与依赖配置 推荐库 Eclipse Paho Android Service&#xff08;官方维护&#xff0c;支持后台运行&#xff09; gradle 复制 // build.gradl…...

国产编辑器EverEdit - 编辑辅助功能介绍

1 编辑辅助功能 1.1 各编辑辅助选项说明 1.1.1 行号 打开该选项时&#xff0c;在编辑器主窗口左侧显示行号&#xff0c;如下图所示&#xff1a; 1.1.2 文档地图 打开该选项时&#xff0c;在编辑器主窗口右侧靠近垂直滚动条的地方显示代码的缩略图&#xff0c;如下图所示&…...

WPF 在后台使TextBox失去焦点的方法

在软件设计开发的时候&#xff0c;偶尔会遇到在后台xaml.cs后台中&#xff0c;要将TextBox控件的焦点取消或者使TextBox控件获取焦点&#xff0c;下面介绍讲述一种简单的“只让特定的 TextBox 失去焦点”方法: 前端xaml代码示例&#xff1a; <StackPanel Orientation"…...

工作案例 - python绘制excell表中RSRP列的CDF图

什么是CDF图 CDF&#xff08;Cumulative Distribution Function&#xff09;就是累积分布函数&#xff0c;是概率密度函数的积分。CDF函数是一个在0到1之间的函数&#xff0c;描述了随机变量小于或等于一个特定值的概率。在可视化方面&#xff0c;CDF图表明了一个随机变量X小于…...

CTF SQL注入学习笔记

部分内容来自于SQL注入由简入精_哔哩哔哩_bilibili SQL语句 1.mysqli_error()&#xff1a;返回最近调用函数的最后一个错误描述 语法&#xff1a;mysqli_error(connection) 规定要使用的Mysql连接; 返回一个带有错误描述的字符串。如果没有错误发生则返回 "" 2…...

element-plus el-tree-select 修改 value 字段

element-plus el-tree-select 修改 value 字段 &#xff0c;不显示label 需要注意两个地方&#xff1a; <el-tree-select v-model"value" :data"data" multiple :render-after-expand"false" show-checkbox style"width: 240px" …...

基于javaweb的SpringBoot小区智慧园区管理系统(源码+文档+部署讲解)

&#x1f3ac; 秋野酱&#xff1a;《个人主页》 &#x1f525; 个人专栏:《Java专栏》《Python专栏》 ⛺️心若有所向往,何惧道阻且长 文章目录 运行环境开发工具适用功能说明 运行环境 Java≥8、MySQL≥5.7、Node.js≥14 开发工具 后端&#xff1a;eclipse/idea/myeclipse…...

SpringBoot学习之shardingsphere实现分库分表(基于Mybatis-Plus)(四十九)

一、shardingsphere介绍 ShardingSphere是一款起源于当当网内部的应用框架。2015年在当当网内部诞生,最初就叫ShardingJDBC。2016年的时候,由其中一个主要的开发人员张亮,带入到京东数科,组件团队继续开发。在国内历经了当当网、电信翼支付、京东数科等多家大型互联网企业的…...

智能体架构的创新突破:Agent-S框架的技术解析与实战应用

智能体架构的创新突破&#xff1a;Agent-S框架的技术解析与实战应用 【免费下载链接】Agent-S Agent S: an open agentic framework that uses computers like a human 项目地址: https://gitcode.com/GitHub_Trending/ag/Agent-S Agent-S作为开源的智能体框架&#xff…...

Dinky 1.2.3实战:手把手教你构建带多数据源Connector的Flink 1.20镜像并推上K8s

Dinky 1.2.3实战&#xff1a;构建多数据源Flink镜像与K8s集成全指南 1. 为什么需要定制Flink基础镜像&#xff1f; 在实时数据处理领域&#xff0c;Flink已成为事实上的标准计算引擎。但官方镜像往往只包含基础组件&#xff0c;当我们需要连接MySQL、Kafka、Paimon等不同数据源…...

多智能体概述

一、多智能体概述 多智能体系统通过协调多个专职智能体或组件来完成复杂流程。并非所有复杂任务都需要多智能体——单个智能体配合合适的工具与提示词往往就够用。我们何时采用多智能体模式更有价值&#xff0c;以及 AgentScope 支持哪些模式&#xff1f; 1、为什么要用多智能体…...

立知-lychee-rerank-mm效果展示:文本+图像联合匹配惊艳案例集

立知-lychee-rerank-mm效果展示&#xff1a;文本图像联合匹配惊艳案例集 1. 多模态重排序新体验 想象一下这样的场景&#xff1a;你在电商平台搜索"白色猫咪玩毛线球"&#xff0c;系统返回了20个结果&#xff0c;有纯文字描述、有商品图片、还有图文混合的内容。传…...

Hunyuan-MT-7B在学术论文翻译中的精准应用

Hunyuan-MT-7B在学术论文翻译中的精准应用 1. 学术翻译的痛点与挑战 学术论文翻译从来都不是简单的文字转换工作。想象一下&#xff0c;你辛辛苦苦写好的论文&#xff0c;里面充满了专业术语、复杂公式和严谨的参考文献&#xff0c;如果翻译时出现偏差&#xff0c;整个研究的…...

WarcraftHelper全方位优化指南:解决魔兽争霸III现代适配难题

WarcraftHelper全方位优化指南&#xff1a;解决魔兽争霸III现代适配难题 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 当你在4K显示器上启动魔兽争霸…...

命令行玩转JUnit测试:Linux环境配置+批量执行技巧(JDK8/JUnit4.12)

命令行玩转JUnit测试&#xff1a;Linux环境配置批量执行技巧&#xff08;JDK8/JUnit4.12&#xff09; 在持续集成和DevOps实践中&#xff0c;服务器环境下的自动化测试执行能力直接影响交付效率。本文将深入讲解如何在Linux服务器上搭建无IDE的JUnit测试环境&#xff0c;解决依…...

语音端点检测VAD的深度学习进化:从传统方法到RNN的实战对比

语音端点检测VAD的深度学习进化&#xff1a;从传统方法到RNN的实战对比 在嘈杂的咖啡馆里&#xff0c;语音助手能否准确识别你的唤醒词&#xff1f;视频会议中&#xff0c;系统如何智能过滤键盘敲击声&#xff1f;这些场景的核心技术&#xff0c;都离不开语音端点检测&#xff…...

【ArUco GridBoard实战】从精度瓶颈到优化检测的完整指南

1. ArUco GridBoard的精度瓶颈与优化思路 在实际的计算机视觉项目中&#xff0c;我们经常会遇到标定板尺寸受限的情况。比如我之前做的一个工业检测项目&#xff0c;标定板尺寸被限制在3cm2cm以内。最初使用的是Charuco标定板&#xff0c;但很快就发现了一个严重问题&#xff1…...

Debian/Ubuntu 上 KVM 虚拟化环境搭建全攻略:从源码到实战

Debian/Ubuntu 上 KVM 虚拟化环境搭建全攻略&#xff1a;从源码到实战 在当今云计算和容器化技术蓬勃发展的时代&#xff0c;虚拟化技术依然是基础设施领域不可或缺的基石。KVM&#xff08;Kernel-based Virtual Machine&#xff09;作为Linux内核原生支持的虚拟化解决方案&…...