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

开发避坑指南(28):Spring Boot端点检查禁用失效解决方案

问题

Spring Boot 配置了禁用端点检查,可是某些端点还是能访问?或者干脆禁用失效?是什么问题?

问题背景

Spring Boot 版本:2.0.3

原配置

#关闭Spring Boot端点检查
management.endpoint.health.enabled=false

问题分析

首先,要搞清为什么禁用Spring Boot端点检查失效得先搞清楚Spring Boot的Actuator一共有多少个端点?默认开启了哪些端点?

1、Spring Boot 1.x 版本‌
默认提供 ‌13个核心端点‌,包括:
/autoconfig、/configprops、/beans、/dump、/env、/health、/info、/metrics、/mappings、/shutdown、/trace,以及环境变量和线程相关端点。

2、Spring Boot 2.x/3.x 版本‌
端点数量扩展至 ‌20个以上‌,新增了如:
/auditevents、/caches、/conditions、/flyway、/heapdump、/httpexchanges、/integrationgraph、/liquibase、/scheduledtasks、/sessions、/startup等。

**默认仅暴露 /health 和 /info,其他端点需通过配置显式启用。**可以通过访问端点/actuator查看系统开启了哪些端点,默认的返回结果是3个:

{"_links": {"self": {"href": "http://localhost:8073/actuator","templated": false},"health": {"href": "http://localhost:8073/actuator/health","templated": false},"info": {"href": "http://localhost:8073/actuator/info","templated": false}}
}

解决办法

通过上面分析,先检查配置是否正确,搞清楚是要禁用某个端点还是禁用全部端点。比如上面的问题就是只禁用了health端点而已,而info端点没有禁用。正确的配置是:

#关闭Spring Boot端点检查
management.endpoints.enabled-by-default=false

该配置用于禁用所有Actuator端点的默认启用状态。在Spring Boot 2.x中,默认情况下大多数内置端点(如health、info、metrics等)是启用的,此配置会全局关闭所有端点的默认启用行为。

其次是检查是否有多处配置文件,或者配置重复,导致优先级高的配置覆盖了优先级低的配置,而你一直在改优先级低的配置,导致一直在配置无效。

http://www.xdnf.cn/news/1324801.html

相关文章:

  • Vue3 中使用 Element Plus 完整指南
  • Spring AI Alibaba 项目接入兼容 OpenAI API 的大模型
  • 杂记 05
  • 母猪姿态转换行为识别:计算机视觉与行为识别模型调优指南
  • Android使用Kotlin协程+Flow实现打字机效果
  • Python 作用域 (scope) 与闭包 (closure)
  • 【学习嵌入式-day-27-进程间通信】
  • Docker常见指令速查
  • 用户认证技术
  • STL库——string(类函数学习)
  • SQL详细语法教程(六)存储+索引
  • AI心理助手开发文档
  • 在python中等号左边的都是对象,在matlab中等号a = 3+2 a就是个变量
  • 力扣hot100:盛最多水的容器:双指针法高效求解最大容量问题(11)
  • openfeign 只有接口如何创建bean的
  • Linux设备树简介
  • vue3入门-v-model、ref和reactive讲解
  • Leetcode 16 java
  • Effective C++ 条款49:了解new-handler的行为
  • 力扣 hot100 Day77
  • 单片机驱动LCD显示模块LM6029BCW
  • 机器翻译论文阅读方法:顶会(ACL、EMNLP)论文解析技巧
  • STM32学习笔记14-I2C硬件控制
  • 大数据计算引擎(四)—— Impala
  • Fluss:颠覆Kafka的面向分析的实时流存储
  • GPT-5之后:当大模型更新不再是唯一焦点
  • 深度学习必然用到的概率知识
  • Vue 3中watch的返回值:解锁监听的隐藏技巧
  • 敏感数据加密平台设计实战:如何为你的系统打造安全“保险柜”
  • 遥感机器学习入门实战教程 | Sklearn 案例②:PCA + k-NN 分类与评估