springboot git配置文件自动刷新失败问题排查

这篇具有很好参考价值的文章主要介绍了springboot git配置文件自动刷新失败问题排查。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

​​​​​​​http://{ip}:{port}/refresh

刷新配置接口如上 

说明:当前项目springBoot版本是1.5.9,接口路径与2.x不同

路径区别:/refresh  VS /actuator/refresh

用postman调用refresh接口刷新git配置,报错如下,没有权限

springboot git配置文件自动刷新失败问题排查,spring boot,git,后端

在服务本地启动,调用refresh接口,日志如下:

springboot git配置文件自动刷新失败问题排查,spring boot,git,后端

2024-01-08 15:18:25.663 [INFO] [http-nio-9600-exec-5] [? : ?] Full authentication is required to access actuator endpoints. Consider adding Spring Security or set 'management.security.enabled' to false.

翻译如下:
访问执行器端点需要完整的身份验证。考虑添加Spring Security或设置“management.security”。“启用”为false。 

其中一个意思:考虑设置“management.security.enabled”,为false。 

在git中搜一下,management.security.enabled

#健康检查health脱敏
management.security.enabled=true
springboot git配置文件自动刷新失败问题排查,spring boot,git,后端

处理:把配置true,注释掉,再次调用fresh接口,成功,响应如下,返回了修改的变量名称

springboot git配置文件自动刷新失败问题排查,spring boot,git,后端

至此,问题解决

有以下疑问:

0.refresh,原理是什么,在哪里实现的

1.management.security.enabled=true,默认值是什么

2.management.security.enabled=true,该配置含义是什么,控制什么,refresh接口与这个配置关系是什么?

3.什么原因,导致refresh没有权限,为什么改成false就有权限访问

4.为什么配置成true,对健康健康有什么影响,安全认证打开 - > 关闭,为什么单独写了一个健康检查接口?

5.健康检查默认开启与springboot版本关系

答:

0.参考如下文章

SpringCloud config refresh(配置文件刷新)_spring cloud config refresh-CSDN博客

springboot git配置文件自动刷新失败问题排查,spring boot,git,后端

springboot git配置文件自动刷新失败问题排查,spring boot,git,后端

也就是说/refresh刷新功能,是actuator默认赋予的功能。具体需要看源码,todo

Spring Boot 2.x中的management.security.enabled=false无效问题-CSDN博客

1.理解不对,除了git配置文件中配置了该变量,项目配置也配置了该变量,如下,把git中变量注释掉,项目中配置生效,同时说明读取配置顺序 git > 项目中配置文件。

也就是说关闭了,安全认证,默认值还是true,默认是开启的。

当然官方说法:# springboot 1.5.X 以上默认开通了安全认证

springboot git配置文件自动刷新失败问题排查,spring boot,git,后端

 2.参考如下文章

springboot(十九):使用Spring Boot Actuator监控应用_management.security.enabled作用-CSDN博客

为了保证actuator暴露的监控接口的安全性,需要添加安全控制的依赖spring-boot-start-security依赖,访问应用监控端点时,都需要输入验证信息。Security依赖,可以选择不加,不进行安全管理,但不建议这么做。 

含义如上,控制什么/关系,即控制actuator暴露的监控接口访问权限

3.即关闭了访问refresh接口的安全认证

4.为什么要配置成true呢,看之前备注,《健康检查health脱敏》

springboot git配置文件自动刷新失败问题排查,spring boot,git,后端

意思可以保证health接口可以调用吗,现在设置为false了, 关闭了安全认证,不是更可以健康检查了。springboot2.x 健康检查才默认开启,如下

springboot git配置文件自动刷新失败问题排查,spring boot,git,后端

那健康检查应该不能调用的啊,需要安全认证,如果不能调用,如何实现健康检查的?

为什么开启呢?目的应该是保证安全。

为什么单独写一个健康检查,是之前不能用吗,不是不能用,是返回数据,太多了,近500行,如下

springboot git配置文件自动刷新失败问题排查,spring boot,git,后端

新的健康检查代码,只返回health即可

@RestController
@RequestMapping("/base/health")
public class HealthCheckController {

    @GetMapping
    public String  healthCheck() {
        return "health";
    }
}

5.之前看到其他文章说springboot2.x,健康检查默认开启

当前项目是springboot1.5.9,也是可以的。说明上面结论有误

springboot git配置文件自动刷新失败问题排查,spring boot,git,后端文章来源地址https://www.toymoban.com/news/detail-815262.html

到了这里,关于springboot git配置文件自动刷新失败问题排查的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • nacos 监听配置文件变动(自动刷新),监听服务变动(权重、元数据等),手动推送服务

    对于启动项目时可以检测的配置文件,修改配置文件时也可进入监听,对于服务监听时,项目启动时注册进nacos可以监听,修改服务时关闭服务时都可以监听,也可以手动推送服务到nacos上。 nacos上的配置文件名称为:服务名称-dev.yaml bootstrap.yml

    2024年02月15日
    浏览(39)
  • 使用Windbg分析从系统应用程序日志中找到的系统自动生成的dump文件去排查问题

    目录 1、尝试将Windbg附加到目标进程上进行动态调试,但Windbg并没有捕获到

    2024年02月14日
    浏览(41)
  • 如何排查 Flink Checkpoint 失败问题?

    这是 Flink 相关工作中最常出现的问题,值得大家搞明白。 1. 先找到超时的subtask序号 图有点问题,因为都是成功没失败的,尴尬了。 借图: 2. 找到对应的机器和任务 方法很多,这里看自己习惯和公司提供的系统。 3. 根据日志排查问题 netstat -nap| grep 端口号 就找到对应的p

    2024年02月10日
    浏览(39)
  • 记一次docker启动失败的问题排查

    以前在虚拟机上安装了一个docker,可以正常使用的,今天突然宿主机机器内存条坏了,换了内存条后启动机器,再使用 systemctrl start docker 启动docker,最后使用 docker start containID 启动报错 网上没有找到相应的描述,仔细分析看是 write /proc/sys/kernel/shmmni 报错了,错误原因是 in

    2024年02月14日
    浏览(64)
  • Springboot 集成 Redis集群配置公网IP连接报私网IP连接失败问题

    创建6个配置文件:redis-6381.conf,redis-6382.conf,redis-6383.conf,redis-6384.conf,redis-6385.conf, redis-6386.conf。配置文件内容如下: 1:代码配置 2:yml 配置 让Redis暴露公网IP其实在redis.conf配置文件里是能找到的,这里我们可以手动指定Redis的公网IP、端口以及总线端口(默认服务端口加10000)。

    2024年02月01日
    浏览(39)
  • 解决Springboot项目打成jar包后获取resources目录下的文件失败的问题

    前几天在项目读取resources目录下的文件时碰到一个小坑,明明在本地是可以正常运行的,但是一发到测试环境就报错了,说找不到文件,报错信息是:class path resource [xxxx] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:xxxx.jar!/BOOT-INF/classes!xxxx。 看了

    2024年02月11日
    浏览(61)
  • 成功解决使用git clone下载失败的问题: fatal: 过早的文件结束符(EOF) fatal: index-pack 失败

    1.缓存不够 按照下面操作增加缓存(命令行操作),若是不想使用命令行,也可以在用户家目录下的全局git配置文件 .gitconfig 中,直接更改文件内的内容 使用 git clone 克隆代码时出现以下报错,这个一般是由于代码仓库太大,而本地网络不是很稳定都可以造成以下问题 方法

    2024年01月18日
    浏览(110)
  • 如何排查 IDEA 自身报错?| 以 IntelliJ IDEA 2023.1.4 无法刷新项目 Maven 模块的问题为例

    这个问题是 2023 年 7 月 26 日遇到的,当时还是 IDEA 2023.1.4,结果文章还没写完,7 月 27 日自动给更新了 IDEA 2023.2。问题估计解决了。 所以,本文就简单提一下 IDEA 自身报错的排查方法。 先说问题怎么处理: IDEA 设置从 Maven wrapper 改为使用内置 Maven。 Maven 项目模块调整后,

    2024年02月15日
    浏览(122)
  • 安全实现SpringBoot配置文件自动加解密

    应用程序开发的时候,往往会存在一些敏感的配置属性 数据库账号、密码 第三方服务账号密码 内置加密密码 其他的敏感配置 对于安全性要求比较高的公司,往往不允许敏感配置以明文的方式出现。 通常做法是对这些敏感配置进行加密,然后在使用的地方进行解密。但是有

    2024年02月06日
    浏览(41)
  • MySQL运维实战(3.2) 常见数据库连接失败问题排查

    作者:俊达 我们经常会遇到一些数据库连接失败或访问报错的问题。收集并分析具体的报错信息,可以帮助我们迅速定位问题。 1、客户端到服务端的网络是否畅通,服务端端口是否能连通。 使用ping、telnet等工具探测服务端的端口是否能访问。 如果端口不通,要先排除网络

    2024年01月21日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包