'How to configure specific configurations to spring-cloud-starter-circuitbreaker-resilience4j?

I was configuration spring-cloud-starter-circuitbreaker-resilience4j in my application. When i set the specific configuration my factory no load then configurations.

@Bean
public Customizer<Resilience4JCircuitBreakerFactory> customizer() {

    CircuitBreakerConfig circuitBreakerConfig = CircuitBreakerConfig.custom()
        .slidingWindowType(CircuitBreakerConfig.SlidingWindowType.COUNT_BASED)
        .slidingWindowSize(15)
        .minimumNumberOfCalls(8)
        .waitDurationInOpenState(Duration.ofSeconds(10))
        .build();

    Customizer<Resilience4JCircuitBreakerFactory> customizer = factory ->
        factory.configure(builder -> builder.circuitBreakerConfig(circuitBreakerConfig), "circuit");
    
    return customizer;
}

Service

@Slf4j
@Service
@RequiredArgsConstructor
public class ServiceA {

private final CircuitBreakerFactory circuitBreakerFactory;

public String get() {
    final CircuitBreaker circuitBreaker = circuitBreakerFactory.create("circuit");
    return circuitBreaker.run(this::strings, this::fallbackMethod);
}

private String fallbackMethod(final Throwable t) {
    log.info("teste");
    log.info(t.getMessage());

    return "b";
}

private String strings() {
    return "a";
}

}



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source