diff --git a/changelog.adoc b/changelog.adoc index e292394..ef78a69 100644 --- a/changelog.adoc +++ b/changelog.adoc @@ -3,7 +3,7 @@ == Version 1.1.0 -* Always set the kafka consumer group of this health check +* Make consumer groups unique by appending a random UUID when no group ID is configured explicitly. == Version 0.1.0 diff --git a/src/main/java/com/deviceinsight/kafka/health/KafkaConsumingHealthIndicator.java b/src/main/java/com/deviceinsight/kafka/health/KafkaConsumingHealthIndicator.java index cc7d027..14ae92b 100644 --- a/src/main/java/com/deviceinsight/kafka/health/KafkaConsumingHealthIndicator.java +++ b/src/main/java/com/deviceinsight/kafka/health/KafkaConsumingHealthIndicator.java @@ -42,6 +42,7 @@ import javax.annotation.PreDestroy; public class KafkaConsumingHealthIndicator extends AbstractHealthIndicator { private static final Logger logger = LoggerFactory.getLogger(KafkaConsumingHealthIndicator.class); + private static final String CONSUMER_GROUP_PREFIX = "health-check-"; private final Consumer consumer; @@ -98,7 +99,7 @@ public class KafkaConsumingHealthIndicator extends AbstractHealthIndicator { String groupId = (String) kafkaConsumerProperties.getOrDefault(ConsumerConfig.GROUP_ID_CONFIG, UUID.randomUUID().toString()); kafkaConsumerProperties.put(ConsumerConfig.GROUP_ID_CONFIG, - groupId + "-health-check-" + InetAddress.getLocalHost().getHostAddress()); + CONSUMER_GROUP_PREFIX + groupId + "-" + InetAddress.getLocalHost().getHostAddress()); } catch (UnknownHostException e) { throw new IllegalStateException(e); }