Spring-boot-admin: Version 2.0 doesn't support auto registration with discovery client?

Created on 8 Jun 2018  路  11Comments  路  Source: codecentric/spring-boot-admin

Most helpful comment

yes it contains the disocvery stuff... either you depend on that or you use the
spring-boot-admin-starter-server which pulls it in.

Sorry, I totally forgot that you might not use the server-starter (which is there since 1.5.7)

All 11 comments

I hava the same question spring.boot.admin.client.url is work well but discovery client doesn't work

I have the same problem. Clients aren't automatically discovered from eureka. The UI of SBA is accessible but doesn't display any data.

My configuration uses:

  • Spring Boot 2.0.2
  • Finchley.RC2
  • SBA 2.0.0

The discovery feature was removed from 2.0.0 as Spring Cloud Finchley is not released yet, currently you need to use our 2.0.1-SNAPSHOT.

Now, Spring Cloud Finchley was released. But the spring boot admin does not display any data.

Did you switch to sba 2.0.1?

@joshiste i have the same problem, with the following versions:

    ext {
        springbootVersion = '2.0.3.RELEASE'
        springCloudVersion = 'Finchley.RELEASE'
        springCloudNetflixVersion = '2.0.0.RELEASE'
        springbootAdminVersion = '2.0.1'
        springIoPlatformVersion = 'Cairo-SR2'
    }
    imports {
        mavenBom "io.spring.platform:platform-bom:$springIoPlatformVersion"
        mavenBom "org.springframework.cloud:spring-cloud-dependencies:$springCloudVersion"
        mavenBom "org.springframework.cloud:spring-cloud-netflix:$springCloudNetflixVersion"
    }

just in case - i'm using webflux

    compile 'org.springframework.boot:spring-boot-starter-actuator'
    compile 'org.springframework.boot:spring-boot-starter-webflux'

there are some version overrides with this setup - maybe they might cause problems:

|    +--- com.netflix.eureka:eureka-client:1.9.2
|    |    +--- org.codehaus.jettison:jettison:1.3.7 -> 1.2
|    |    |    \--- stax:stax-api:1.0.1
|    |    +--- com.netflix.netflix-commons:netflix-eventbus:0.3.0
|    |    |    +--- org.slf4j:slf4j-api:1.6.4 -> 1.7.25
|    |    |    +--- com.netflix.netflix-commons:netflix-infix:0.3.0
|    |    |    |    +--- org.slf4j:slf4j-api:1.6.4 -> 1.7.25
|    |    |    |    +--- commons-jxpath:commons-jxpath:1.3
|    |    |    |    +--- joda-time:joda-time:2.3 -> 2.9.9
|    |    |    |    +--- org.antlr:antlr-runtime:3.4
|    |    |    |    |    +--- org.antlr:stringtemplate:3.2.1
|    |    |    |    |    |    \--- antlr:antlr:2.7.7
|    |    |    |    |    \--- antlr:antlr:2.7.7
|    |    |    |    +--- com.google.code.findbugs:jsr305:3.0.1 -> 3.0.2
|    |    |    |    +--- com.google.guava:guava:14.0.1 -> 24.1-jre
|    |    |    |    |    +--- com.google.code.findbugs:jsr305:1.3.9 -> 3.0.2
|    |    |    |    |    +--- org.checkerframework:checker-compat-qual:2.0.0
|    |    |    |    |    +--- com.google.errorprone:error_prone_annotations:2.1.3
|    |    |    |    |    +--- com.google.j2objc:j2objc-annotations:1.1
|    |    |    |    |    \--- org.codehaus.mojo:animal-sniffer-annotations:1.14
|    |    |    |    \--- com.google.code.gson:gson:2.1 -> 2.8.5
|    |    |    +--- com.netflix.servo:servo-core:0.5.3 -> 0.12.21
|    |    |    |    +--- org.slf4j:slf4j-api:1.7.25
|    |    |    |    \--- com.google.guava:guava:19.0 -> 24.1-jre (*)
|    |    |    +--- com.netflix.archaius:archaius-core:0.3.3 -> 0.7.6
|    |    |    |    +--- com.google.code.findbugs:jsr305:3.0.1 -> 3.0.2
|    |    |    |    +--- commons-configuration:commons-configuration:1.8
|    |    |    |    |    +--- commons-lang:commons-lang:2.6
|    |    |    |    |    \--- commons-logging:commons-logging:1.1.1 -> 1.2
|    |    |    |    +--- org.slf4j:slf4j-api:1.6.4 -> 1.7.25
|    |    |    |    +--- com.google.guava:guava:16.0 -> 24.1-jre (*)
|    |    |    |    +--- com.fasterxml.jackson.core:jackson-annotations:2.4.3 -> 2.9.0
|    |    |    |    +--- com.fasterxml.jackson.core:jackson-core:2.4.3 -> 2.9.6
|    |    |    |    \--- com.fasterxml.jackson.core:jackson-databind:2.4.3 -> 2.9.6 (*)
|    |    |    \--- org.apache.commons:commons-math:2.2
|    |    +--- com.thoughtworks.xstream:xstream:1.4.10
|    |    |    +--- xmlpull:xmlpull:1.1.3.1
|    |    |    \--- xpp3:xpp3_min:1.1.4c
|    |    +--- com.netflix.archaius:archaius-core:0.7.6 (*)
|    |    +--- javax.ws.rs:jsr311-api:1.1.1
|    |    +--- com.netflix.servo:servo-core:0.12.21 (*)
|    |    +--- com.sun.jersey:jersey-core:1.19.1
|    |    |    \--- javax.ws.rs:jsr311-api:1.1.1
|    |    +--- com.sun.jersey:jersey-client:1.19.1
|    |    |    \--- com.sun.jersey:jersey-core:1.19.1 (*)
|    |    +--- com.sun.jersey.contribs:jersey-apache-client4:1.19.1
|    |    |    +--- org.apache.httpcomponents:httpclient:4.1.1 -> 4.5.5
|    |    |    |    +--- org.apache.httpcomponents:httpcore:4.4.9
|    |    |    |    +--- commons-logging:commons-logging:1.2
|    |    |    |    \--- commons-codec:commons-codec:1.10 -> 1.11
|    |    |    \--- com.sun.jersey:jersey-client:1.19.1 (*)
|    |    +--- org.apache.httpcomponents:httpclient:4.5.3 -> 4.5.5 (*)
|    |    +--- com.google.inject:guice:4.1.0 -> 3.0
|    |    |    +--- javax.inject:javax.inject:1
|    |    |    +--- aopalliance:aopalliance:1.0
|    |    |    \--- org.sonatype.sisu.inject:cglib:2.2.1-v20090111
|    |    |         \--- asm:asm:3.1
|    |    +--- com.github.vlsi.compactmap:compactmap:1.2.1
|    |    |    \--- com.github.andrewoma.dexx:dexx-collections:0.2
|    |    +--- com.fasterxml.jackson.core:jackson-annotations:2.9.4 -> 2.9.0
|    |    +--- com.fasterxml.jackson.core:jackson-core:2.9.4 -> 2.9.6
|    |    \--- com.fasterxml.jackson.core:jackson-databind:2.9.4 -> 2.9.6 (*)

IIRC gradle has some slightly different resolution algorithm than maven (esp. when using BOMs)

Using this simple sample using maven works for me:
sba-eureka.zip

p.s. since 1.5.7 Spring Boot Admin itself has a BOM: de.codecentric:spring-boot-admin-dependencies.

@joshiste just checked .pom file - there is dependency spring-boot-admin-server-cloud

Should we use it in Eureka case?

yes it contains the disocvery stuff... either you depend on that or you use the
spring-boot-admin-starter-server which pulls it in.

Sorry, I totally forgot that you might not use the server-starter (which is there since 1.5.7)

@joshiste indeed - i use plain dependencies, w/out starter:

    compile 'de.codecentric:spring-boot-admin-server'
    compile 'de.codecentric:spring-boot-admin-server-ui'
    compile 'de.codecentric:spring-boot-admin-server-cloud'

So, including dependency spring-boot-admin-server-cloud solved issue for me. Thanks for clarification

Was this page helpful?
0 / 5 - 0 ratings