当前位置: 首页 > 知识库问答 >
问题:

如何通过配置禁用Rabbit health check

吴浩博
2023-03-14

我想禁用默认RabbitMockConfiguration中的兔子健康检查。我们有一个通过@import导入的配置。不幸的是,该配置并不能阻止将健康检查添加到健康指示器中,因为一旦spring-rabbit位于类路径中,就会发生这种情况。

我们有一个解决办法,即在使用该配置的每个服务中添加一个属性文件,这将禁用属性management.health.rabbit.enabled,但对我们来说,如果能够在配置级别禁用该heathcheck将会好得多。

我考虑了使用@TestPropertySource(properties=[“management.health.rabbit.enabled=false”])进行的测试,但找不到一个等价物用于@configuration,因为@PropertySource需要属性文件的位置,并且不接受单个属性。

知道我们能做什么吗?

Spring Boot版本:2.2.4
Spring amqp版本:2.2.3
Spring版本:5.2.3

共有1个答案

薛望
2023-03-14

如果您想改变健康检查的行为,我宁愿重写健康检查,使它声明Rabbit处于模拟模式。

为此,只需创建一个名为RabbithealThinDicatorHealThinDicatorbean:

@Bean
public HealthIndicator rabbitHealthIndicator() {
    return () -> Health.up().withDetail("version", "mock").build();
}

这具有切换生产一个的效果,并暴露了应用程序是在一个模拟的情况下运行的。

 类似资料:
  • 问题内容: 我想通过向Jenkins发送后卷曲请求来禁用Jenkins作业。 我尝试使用以下方法进行操作: 但每次都失败。我得到的错误是: 403请求中未包含有效面包屑 是否有基于卷曲的良好解决方案? 问题答案: 捏碎错误表明您正在使用CSRF保护。您需要在请求中包含适当的面包屑标头。面包屑可以从Jenkins API获得,如上面链接的JenkinsWiki页面所述。“使用curl和crumb触发

  • 或者可以在controller创建之后,使用configure API来配置controller,具体使用方式如下所示: controller.configure(configs); configure API接受的参数和通过构造函数配置配置一样,可以查看 配置参数表 了解各个配置参数的详细解释。

  • 如何在Spring Security 4中通过XML配置仅对特定URL模式禁用CSRF? Spring安全。xml 我的代码工作正常,如果我只使用一个安全:http块,但在我添加另一个块后,它抛出错误如下: 错误

  • 我在maven项目中使用sonar预览模式,但在下载依赖项时,sonarsource使用JFrog Jcenter存储库作为我们中央存储库的镜像,但它不包含所有依赖项 日志: [调试]使用镜像x-maven-central(https://company-url.com/jcenter/)中环(https://company-url.com/x-mvn-delivered). 然后我有一个警告:[

  • 我一直在写的脚本工作得很好。我刚刚添加了一个选项,这样它就可以使用这个代码在chrome上打开一个配置文件。 使用时,我得到这个错误代码。 我该怎么解决这个问题?

  • uniapp 开发应用,打包成 Android 后,需要提供用户选择 api 接口环境的功能,方便测试使用。 现在我把配置文件单独写在/api/common/config.js里面了,然后vue.config.js和其他api文件都来引用该文件。 我希望可以通过界面修改该文件,从而方便切换环境,该如何实现?