0

I am trying to use retry functionality in spring consul so that the application fail-fast after certain number of retries. I am using following bootstrap.yml

spring:
  profiles:
    active: dev
  application:
    name: consultest
  cloud:
    consul:
      token: ${token}
      enabled: true
      host: ${host}
      port: 8500
      retry:
        initial-interval: 5000
        max-attempts: 6
        max-interval: 600000
        multiplier: 3
  profiles: dev

Also my pom.xml has following dependencies

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

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

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-consul-config</artifactId>
            <version>2.2.2.RELEASE</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-consul-discovery -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-consul-discovery</artifactId>
            <version>2.2.2.RELEASE</version>
        </dependency>
    </dependencies>

I am using springboot version 2.2.2.RELEASE.

The problem is that whenever i start the application and it is not able to connect to consul, it only tries one time and then the application fails

Following is the log,

2023-01-25 09:08:16.245 ERROR 1166405 --- [           main] o.s.c.c.c.ConsulPropertySourceLocator    : Fail fast is set and there was an error reading configuration from consul.
2023-01-25 09:08:16.252 ERROR 1166405 --- [           main] o.s.boot.SpringApplication               : Application run failed

As you can see the application does not retry. Am i missing some configuration? Can anyone help with this issue?

Arbaz Sheikh
  • 217
  • 2
  • 10

1 Answers1

0

It seems you did not set the fail-fast property to false. since it is true, the application will throw an exception in case of consul unavaibility. I refer u to the spring documentation regarding consul service, here.

Ali mjz
  • 13
  • 4