From: Kai Moritz Date: Sat, 30 Apr 2022 09:22:41 +0000 (+0200) Subject: HealthIndicator implementiert: Implementierung selbst vergessen :/ X-Git-Tag: sumup-requests---lvm-2-tage~8 X-Git-Url: http://juplo.de/gitweb/?a=commitdiff_plain;h=a330ca24c8a0502e8480bc0aae6179c4e325c724;hp=84fed0ec1d13f26d636abcb38c201c9d13dbc46c;p=demos%2Fkafka%2Ftraining HealthIndicator implementiert: Implementierung selbst vergessen :/ --- diff --git a/src/main/java/de/juplo/kafka/ApplicationHealthIndicator.java b/src/main/java/de/juplo/kafka/ApplicationHealthIndicator.java new file mode 100644 index 0000000..ab9782c --- /dev/null +++ b/src/main/java/de/juplo/kafka/ApplicationHealthIndicator.java @@ -0,0 +1,32 @@ +package de.juplo.kafka; + +import lombok.RequiredArgsConstructor; +import org.springframework.boot.actuate.health.Health; +import org.springframework.boot.actuate.health.HealthIndicator; +import org.springframework.stereotype.Component; + + +@Component +@RequiredArgsConstructor +public class ApplicationHealthIndicator implements HealthIndicator +{ + private final EndlessConsumer consumer; + + + @Override + public Health health() + { + try + { + return consumer + .exitStatus() + .map(Health::down) + .orElse(Health.outOfService()) + .build(); + } + catch (IllegalStateException e) + { + return Health.up().build(); + } + } +}