CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/maven-de-codecentric--spring-boot-admin-starter-client

Spring Boot starter that auto-configures a client application to register with Spring Boot Admin server for centralized monitoring and management

Pending
Overview
Eval results
Files

client-configuration.mddocs/

Client Configuration

The client configuration controls how the Spring Boot application connects to and communicates with Spring Boot Admin servers. All properties are prefixed with spring.boot.admin.client.

Configuration Properties

Server Connection

@ConfigurationProperties("spring.boot.admin.client")
public class ClientProperties {
    // Server URLs to register with
    private String[] url = new String[] {};
    
    // Admin REST API path (default: "instances")
    private String apiPath = "instances";
    
    // Time interval between registration attempts (default: 10 seconds)
    private Duration period = Duration.ofMillis(10_000L);
    
    // Connection timeout for registration (default: 5 seconds)
    private Duration connectTimeout = Duration.ofMillis(5_000L);
    
    // Read timeout for registration (default: 5 seconds)
    private Duration readTimeout = Duration.ofMillis(5_000L);
}

Authentication

public class ClientProperties {
    // Username for basic authentication with admin server
    private String username;
    
    // Password for basic authentication with admin server
    private String password;
}

Registration Behavior

public class ClientProperties {
    // Enable automatic registration when application starts (default: true)
    private boolean autoRegistration = true;
    
    // Enable automatic deregistration when application shuts down
    // Defaults to true if running on a cloud platform
    private Boolean autoDeregistration = null;
    
    // Register with one admin server vs all admin servers (default: true)
    private boolean registerOnce = true;
    
    // Enable the Spring Boot Admin client entirely (default: true)
    private boolean enabled = true;
}

Key Methods

public class ClientProperties {
    // Get admin URLs with API path appended
    public String[] getAdminUrl();
    
    // Determine auto-deregistration setting based on environment
    public boolean isAutoDeregistration(Environment environment);
}

Property Configuration Examples

Basic Setup

# Single admin server
spring.boot.admin.client.url=http://localhost:8080

# Multiple admin servers  
spring.boot.admin.client.url=http://admin1:8080,http://admin2:8080

Authentication

spring.boot.admin.client.username=admin-user
spring.boot.admin.client.password=secret-password

Timeouts and Intervals

# Check every 30 seconds instead of default 10
spring.boot.admin.client.period=30000

# Longer connection timeout for slow networks
spring.boot.admin.client.connect-timeout=10000
spring.boot.admin.client.read-timeout=15000

Registration Control

# Disable automatic registration (manual control)
spring.boot.admin.client.auto-registration=false

# Force auto-deregistration even on non-cloud platforms
spring.boot.admin.client.auto-deregistration=true

# Register with all admin servers instead of just one
spring.boot.admin.client.register-once=false

Disabling the Client

# Completely disable Spring Boot Admin client
spring.boot.admin.client.enabled=false

Advanced Configuration

Custom API Path

# Use custom API endpoint on admin server
spring.boot.admin.client.api-path=custom-instances

YAML Configuration

spring:
  boot:
    admin:
      client:
        url: 
          - http://admin1:8080
          - http://admin2:8080
        username: admin
        password: secret
        period: 30s
        connect-timeout: 10s
        read-timeout: 15s
        auto-registration: true
        auto-deregistration: true
        register-once: false

Install with Tessl CLI

npx tessl i tessl/maven-de-codecentric--spring-boot-admin-starter-client

docs

application-registration.md

client-configuration.md

cloud-platform-integration.md

index.md

instance-configuration.md

metadata-management.md

tile.json