健康指標

健康指標需要 spring-boot-starter-actuator 相依性。對於 maven 使用

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

Spring Cloud Stream Kafka Streams Binder 提供了健康指標來檢查底層 streams 執行緒的狀態。Spring Cloud Stream 定義了一個屬性 management.health.binders.enabled 來啟用健康指標。請參閱 Spring Cloud Stream 文件

健康指標為每個 stream 執行緒的元數據提供以下詳細資訊

  • 執行緒名稱

  • 執行緒狀態:CREATEDRUNNINGPARTITIONS_REVOKEDPARTITIONS_ASSIGNEDPENDING_SHUTDOWNDEAD

  • 活動任務:任務 ID 和分割區

  • 待命任務:任務 ID 和分割區

預設情況下,僅全域狀態可見 (UPDOWN)。若要顯示詳細資訊,屬性 management.endpoint.health.show-details 必須設定為 ALWAYSWHEN_AUTHORIZED。有關健康資訊的更多詳細資訊,請參閱 Spring Boot Actuator 文件

如果所有註冊的 Kafka 執行緒都處於 RUNNING 狀態,則健康指標的狀態為 UP

由於 Kafka Streams binder 中有三個個別的 binder (KStreamKTableGlobalKTable),它們都會報告健康狀態。當啟用 show-details 時,報告的某些資訊可能重複。

當同一個應用程式中存在多個 Kafka Streams 處理器時,將會針對所有處理器報告健康檢查,並依 Kafka Streams 的應用程式 ID 進行分類。