From 0247cd25da5334dd8f2ad64ad29fca71ab51fa7e Mon Sep 17 00:00:00 2001 From: Andreas Fritz Date: Fri, 15 Mar 2024 11:20:54 +0100 Subject: [PATCH] added DiscoveryController to spring-boot-admin-discoveryclient --- .../README.md | 2 ++ .../springbootadmin/DiscoveryController.java | 31 +++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 kubernetes/apps/spring-boot-admin-discoveryclient/src/main/java/de/codecentric/springbootadmin/DiscoveryController.java diff --git a/kubernetes/apps/spring-boot-admin-discoveryclient/README.md b/kubernetes/apps/spring-boot-admin-discoveryclient/README.md index 0f1b919..12ac724 100644 --- a/kubernetes/apps/spring-boot-admin-discoveryclient/README.md +++ b/kubernetes/apps/spring-boot-admin-discoveryclient/README.md @@ -57,6 +57,8 @@ helm uninstall spring-boot-admin-discoveryclient ## URI - http://localhost/spring-boot-admin-discoveryclient (requires [traefik](../../helm-charts/traefik/README.md) to be running) +- http://localhost/spring-boot-admin-discoveryclient/discovery/services +- http://localhost/spring-boot-admin-discoveryclient/discovery/instances/hello-world ## Access Actuator ```bash diff --git a/kubernetes/apps/spring-boot-admin-discoveryclient/src/main/java/de/codecentric/springbootadmin/DiscoveryController.java b/kubernetes/apps/spring-boot-admin-discoveryclient/src/main/java/de/codecentric/springbootadmin/DiscoveryController.java new file mode 100644 index 0000000..461d7ae --- /dev/null +++ b/kubernetes/apps/spring-boot-admin-discoveryclient/src/main/java/de/codecentric/springbootadmin/DiscoveryController.java @@ -0,0 +1,31 @@ +package de.codecentric.springbootadmin; + +import java.util.List; +import org.springframework.cloud.client.ServiceInstance; +import org.springframework.cloud.client.discovery.DiscoveryClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/discovery") +public class DiscoveryController { + + private final DiscoveryClient discoveryClient; + + public DiscoveryController(DiscoveryClient discoveryClient) { + this.discoveryClient = discoveryClient; + } + + @GetMapping("/services") + public List services() { + return discoveryClient.getServices(); + } + + @GetMapping("/instances/{serviceId}") + public List instances(@PathVariable String serviceId) { + return discoveryClient.getInstances(serviceId); + } + +}