From aa713e8e58bb15b1090e4adbf1b05b73e73a4e70 Mon Sep 17 00:00:00 2001 From: Dirk Franssen Date: Wed, 7 Dec 2016 12:09:31 +0100 Subject: [PATCH] added '/hostname' to the HealthResource, which is handy in a dockerized loadbalanced environment --- .../airhacks/ping/boundary/HealthResource.java | 5 +++++ .../com/airhacks/ping/control/ServerWatch.java | 17 ++++++++++++++++- src/main/webapp/index.html | 3 +++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/airhacks/ping/boundary/HealthResource.java b/src/main/java/com/airhacks/ping/boundary/HealthResource.java index 7e1dcf2..977f5b7 100644 --- a/src/main/java/com/airhacks/ping/boundary/HealthResource.java +++ b/src/main/java/com/airhacks/ping/boundary/HealthResource.java @@ -44,4 +44,9 @@ public JsonObject osInfo() { return this.watch.osInfo(); } + @GET + @Path("/hostname") + public String hostname() { + return this.watch.getHostname(); + } } diff --git a/src/main/java/com/airhacks/ping/control/ServerWatch.java b/src/main/java/com/airhacks/ping/control/ServerWatch.java index 97e7d6e..80fcf75 100644 --- a/src/main/java/com/airhacks/ping/control/ServerWatch.java +++ b/src/main/java/com/airhacks/ping/control/ServerWatch.java @@ -4,6 +4,8 @@ import java.lang.management.MemoryMXBean; import java.lang.management.MemoryUsage; import java.lang.management.OperatingSystemMXBean; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.time.ZonedDateTime; import javax.annotation.PostConstruct; import javax.ejb.Singleton; @@ -22,19 +24,32 @@ public class ServerWatch { private ZonedDateTime startTime; private MemoryUsage heapUsageAtStartTime; private MemoryMXBean memoryMxBean; + private String hostname; @PostConstruct public void initialize() { this.initializeStartTime(); this.memoryMxBean = ManagementFactory.getMemoryMXBean(); this.heapUsageAtStartTime = this.memoryMxBean.getHeapMemoryUsage(); - + this.lookupHostname(); } void initializeStartTime() { this.startTime = ZonedDateTime.now(); } + void lookupHostname() { + try { + this.hostname = InetAddress.getLocalHost().getHostName(); + } catch (UnknownHostException ex) { + this.hostname = " : " + ex.getMessage(); + } + } + + public String getHostname() { + return hostname; + } + public ZonedDateTime getDateTime() { return this.startTime; } diff --git a/src/main/webapp/index.html b/src/main/webapp/index.html index e882599..b250e44 100644 --- a/src/main/webapp/index.html +++ b/src/main/webapp/index.html @@ -41,6 +41,9 @@

Health

+