如何通过配置禁用Rabbit运行状况检查

时间:2020-02-13 08:58:30

标签: spring spring-boot spring-amqp spring-rabbitmq

我想在默认的RabbitMockConfiguration中禁用兔子健康检查。 我们有一个通过<v-file-input v-model="files" placeholder="Upload your documents" label="File input" multiple prepend-icon="mdi-paperclip" > <template v-slot:selection="{ text }"> <v-chip small label color="primary" > {{ text }} </v-chip> </template> </v-file-input> 导入的配置。不幸的是,该配置并不能阻止将运行状况检查添加到运行状况指示器,因为一旦spring-rabbit在类路径中就会发生这种情况。

我们有一个解决方法,就是使用该配置在每个服务中添加一个属性文件,这会禁用属性@Import,但是对我们来说,能够在配置级别禁用该heathcheck会更好。

我考虑过使用management.health.rabbit.enabled进行测试,但是我找不到用于@TestPropertySource(properties = ["management.health.rabbit.enabled=false"])的等效项,因为@Configuration期望属性文件的位置并且不接受单一属性。

知道我们能做什么吗?

春季启动版本:2.2.4
Spring Amqp版本:2.2.3
春季版本:5.2.3

2 个答案:

答案 0 :(得分:4)

如果您想更改运行状况检查的行为,我宁愿覆盖运行状况检查,以便它指出Rabbit处于模拟模式。

要这样做,只需创建一个名为HealthIndicator的{​​{1}} bean:

rabbitHealthIndicator

这具有切换生产版本的作用,并公开了应用程序正在运行模拟的事实。

答案 1 :(得分:-1)

我想您应该使用MockReddisConfiguration添加'ApplicationListener'并将实现添加到'src / main / resources / META-INF / spring.factories'到您的模块中。 here

有更详细的描述