Spring Cloud Dashboard


License

License

GroupId

GroupId

com.github.vanroy
ArtifactId

ArtifactId

spring-cloud-dashboard
Last Version

Last Version

1.2.0.RELEASE
Release Date

Release Date

Type

Type

jar
Description

Description

Spring Cloud Dashboard
Spring Cloud Dashboard
Project URL

Project URL

https://github.com/vanroy/spring-cloud-dashboard
Project Organization

Project Organization

Pivotal Software, Inc.
Source Code Management

Source Code Management

https://github.com/vanroy/spring-cloud-dashboard/

Download spring-cloud-dashboard

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.vanroy/spring-cloud-dashboard/ -->
<dependency>
    <groupId>com.github.vanroy</groupId>
    <artifactId>spring-cloud-dashboard</artifactId>
    <version>1.2.0.RELEASE</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.vanroy/spring-cloud-dashboard/
implementation 'com.github.vanroy:spring-cloud-dashboard:1.2.0.RELEASE'
// https://jarcasting.com/artifacts/com.github.vanroy/spring-cloud-dashboard/
implementation ("com.github.vanroy:spring-cloud-dashboard:1.2.0.RELEASE")
'com.github.vanroy:spring-cloud-dashboard:jar:1.2.0.RELEASE'
<dependency org="com.github.vanroy" name="spring-cloud-dashboard" rev="1.2.0.RELEASE">
  <artifact name="spring-cloud-dashboard" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.vanroy', module='spring-cloud-dashboard', version='1.2.0.RELEASE')
)
libraryDependencies += "com.github.vanroy" % "spring-cloud-dashboard" % "1.2.0.RELEASE"
[com.github.vanroy/spring-cloud-dashboard "1.2.0.RELEASE"]

Dependencies

compile (6)

Group / Artifact Type Version
org.springframework.boot : spring-boot-starter-web jar 1.5.4.RELEASE
org.springframework.boot : spring-boot-starter-cache jar 1.5.4.RELEASE
org.springframework.boot : spring-boot-starter-thymeleaf jar 1.5.4.RELEASE
org.springframework : spring-aspects jar
org.apache.httpcomponents : httpclient jar 4.5.3
com.google.guava : guava jar

provided (6)

Group / Artifact Type Version
org.aspectj : aspectjrt jar 1.8.7
org.springframework.cloud : spring-cloud-netflix-core jar
com.netflix.eureka : eureka-core jar
com.amazonaws : aws-java-sdk-elasticbeanstalk jar 1.11.156
com.amazonaws : aws-java-sdk-ec2 jar 1.11.156
com.amazonaws : aws-java-sdk-cloudformation jar 1.11.156

test (3)

Group / Artifact Type Version
junit : junit jar 4.12
org.springframework.boot : spring-boot-starter-test jar 1.5.4.RELEASE
org.springframework.cloud : spring-cloud-netflix-eureka-server jar

Project Modules

There are no modules declared in this project.

spring-cloud-dashboard

This application provides a simple GUI to administrate Spring Cloud applications infrastructure. It's a fork of Spring Boot Admin to manage applications registered in service registry (Netflix Eureka and AWS Beanstalk).

At the moment it provides the following features for every registered application (most of then inherited of spring-boot-admin).

  • Show name/id and version number
  • Show health status
  • Show details, like
  • Java System- / Environment- / Spring properties
  • JVM & memory metrics
  • Counter & gauge Metrics
  • Datasource Metrics
  • Easy loggerlevel management
  • Interact with JMX-Beans
  • View Threaddump

Any specific spring cloud information are also available in dashboard

  • Application registry history ( from Eureka Server )
  • Circuit Breaker dashboard ( from Hystrix or Turbine )

Easy Setup

Add the following dependency to your pom.xml after you have build this project locally.

<dependency>
	<groupId>com.github.vanroy</groupId>
	<artifactId>spring-cloud-dashboard</artifactId>
	<version>1.2.0.RELEASE</version>
</dependency>

Create the Spring Cloud Dashboard with only one single Annotation.

@SpringBootApplication
@EnableEurekaServer
@EnableDiscoveryClient
@EnableCloudDashboard
public class Application {
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}
}

HTTP Client Configuration

Spring Cloud Dashboard uses an Apache HTTP Client to query your instance's actuator endpoints. Sometimes it is possible that these endpoints are secured. Configurations are available to customize you http client with Basic pre authorization headers.

spring:
  cloud:
    dashboard:
      http:
        # Basic Credentials
        username: user
        password: password
        
        # Optional Defaults values
        maxConnection: 100 
		connectTimeout: 1000
		socketTimeout: 2000 
		requestTimeout: 1000

Samples:

Samples are available in this repository : https://github.com/VanRoy/spring-cloud-dashboard-samples

Screenshot:

Application registry:

Circuit breaker:

Registry history:

Versions

Version
1.2.0.RELEASE
1.1.0.RELEASE
1.0.0.RELEASE