我正在尝试在我的 Kotlin Springboot 应用程序中配置 Resilience4J CircuitBreaker。这是一个 Springboot2 应用程序。 我当前的 Resilience4J 版本是 1.7.0。但是当我尝试设置
.registerHealthIndicator(true)
时,它在当前版本中不可用。我升级到2.2.0,但仍然有错误。我想在 actuator/health
中查看 CircuitBreaker 的状态。如果没有此设置,如何查看 CircuiteBreaker 状态?
此外,我有点困惑
spring-cloud-starter-circuitbreaker-resilience4j
jar 与 resilience4j-spring-boot3
jar 之间的区别。
@Bean
fun circuitBreaker(): CircuitBreaker {
val config = CircuitBreakerConfig.custom()
.registerHealthIndicator(true) // Error - Unresolved reference: registerHealthIndicator
.recordExceptions(SocketTimeoutException::class.java)
.slidingWindowSize(5)
.minimumNumberOfCalls(3)
.permittedNumberOfCallsInHalfOpenState(3)
.automaticTransitionFromOpenToHalfOpenEnabled(true)
.waitDurationInOpenState(Duration.ofSeconds(50))
.failureRateThreshold(50f)
.build()
return CircuitBreaker.of("myCircuitBreaker2", config)
}
我在 application.yml 中添加了以下配置。
resilience4j.circuitbreaker:
configs:
default:
registerHealthIndicator: true
但
/health
仍然显示为{"status":"UP","components":{"circuitBreakers":{"status":"UNKNOWN"}, ..."
您好,我也遇到了同样的问题,请问您找到解决办法了吗?