Spring Cloud Stream 为活页夹提供运行状况指示器。 它是在名称下注册的,可以通过设置属性来启用或禁用。bindersmanagement.health.binders.enabledSpring中文文档

要启用运行状况检查,您首先需要通过包含其依赖项来启用“web”和“actuator”(请参阅绑定可视化和控制)Spring中文文档

如果应用程序未显式设置,则匹配为 并启用活页夹运行状况指示器。 如果要完全禁用运行状况指示器,则必须设置为 。management.health.binders.enabledmanagement.health.defaults.enabledtruemanagement.health.binders.enabledfalseSpring中文文档

可以使用 Spring Boot 执行器运行状况端点访问运行状况指示器 - 。 默认情况下,仅当您点击上述终结点时,您才会收到顶级应用程序状态。 为了从活页夹特定运行状况指示器中接收完整详细信息,您需要在应用程序中包含具有该值的属性。/actuator/healthmanagement.endpoint.health.show-detailsALWAYSSpring中文文档

运行状况指示器是特定于活页夹的,某些活页夹实现不一定提供运行状况指示器。Spring中文文档

如果您想完全禁用所有开箱即用的健康指标,而是提供您自己的健康指标, 为此,可以将 Property 设置为 并在应用程序中提供您自己的 Bean。 在这种情况下,Spring Boot 中的运行状况指示器基础结构仍将选取这些自定义 bean。 即使您没有禁用活页夹运行状况指示器,除了开箱即用的运行状况检查之外,您仍然可以通过提供自己的 Bean 来增强运行状况检查。management.health.binders.enabledfalseHealthIndicatorHealthIndicatorSpring中文文档

当同一应用程序中有多个活页夹时,运行状况指示器默认处于启用状态,除非应用程序通过设置为 来关闭它们。 在这种情况下,如果用户想要禁用对活页夹子集的运行状况检查,则应通过在多活页夹配置的环境中设置为来完成。 有关如何提供特定于环境的属性的详细信息,请参阅连接到多个系统management.health.binders.enabledfalsemanagement.health.binders.enabledfalseSpring中文文档

如果类路径中存在多个绑定,但并非所有绑定都用于应用程序,则可能会导致运行状况指示器上下文中出现一些问题。 可能有关于如何执行运行状况检查的实现特定细节。例如,Kafka 活页夹可以决定状态,就好像活页夹没有注册任何目标一样。DOWNSpring中文文档

让我们来看看具体的情况。假设类路径中同时存在 Kafka 和 Kafka Streams 绑定器,但仅在应用程序代码中使用 Kafka Streams 绑定器,即仅使用 Kafka Streams 绑定器提供绑定。 由于未使用 Kafka 活页夹,并且它有特定的检查来查看是否注册了任何目标,因此活页夹运行状况检查将失败。 顶级应用程序运行状况检查状态将报告为 。 在这种情况下,您可以简单地从应用程序中删除 kafka binder 的依赖关系,因为您没有使用它。DOWNSpring中文文档