Отсутствие метрик при программном создании автоматического выключателя - PullRequest
1 голос
/ 24 апреля 2020

Я хочу определить разрыв цепи с помощью подхода программирования, поэтому я сделал:

@Configuration
public class MyCircuitBreakerConfig {

@Bean
public CircuitBreakerRegistry myRegistry() {
    CircuitBreakerRegistry registry = CircuitBreakerRegistry.ofDefaults();
    registry.circuitBreaker("mycircuit", circuitConfig());
    return registry;
}

Проблема в том, что, даже если он работает правильно, я получаю следующее в метриках:

"components" : {
"circuitBreakers" : {
  "status" : "UNKNOWN"
}

Хотя, если я определю его в файле свойств:

resilience4j:
 circuitbreaker:
      configs:
        myconfig:
          ...
      instances:
       mycircuit:
          base-config: myconfig

, я смогу его увидеть. В чем может быть проблема? Я использую зависимость resilience4j-spring-boot2.

1 Ответ

0 голосов
/ 27 апреля 2020

Вы не должны создавать свою собственную CircuitBreakerRegistry. Автоконфигурация Spring Boot создает экземпляр, который вы должны использовать. Если вам это нужно, просто введите (autowire) существующую CircuitBreakerRegistry в ваш код.

...