AndrewJSchofield commented on code in PR #14864: URL: https://github.com/apache/kafka/pull/14864#discussion_r1409819732
########## streams/src/main/java/org/apache/kafka/streams/KafkaStreams.java: ########## @@ -1791,6 +1794,52 @@ protected int processStreamThread(final Consumer<StreamThread> consumer) { return copy.size(); } + /** + * Returns the internal clients' assigned {@code client instance ids}. + * + * @return the internal clients' assigned instance ids used for metrics collection. + * + * @throws IllegalStateException If {@code KafkaStreams} is not running. + * @throws TimeoutException Indicates that a request timed out. + */ + public ClientInstanceIds clientInstanceIds(final Duration timeout) { + if (state().hasNotStarted()) { + throw new IllegalStateException("KafkaStreams has not been started, you can retry after calling start()."); + } + if (state().isShuttingDown() || state.hasCompletedShutdown()) { + throw new IllegalStateException("KafkaStreams has been stopped (" + state + ")."); + } + + final ClientInstanceIdsImpl clientInstanceIds = new ClientInstanceIdsImpl(); + + KafkaFuture<Uuid> globalThreadFuture = null; + if (globalStreamThread != null) { + globalThreadFuture = globalStreamThread.globalConsumerInstanceId(timeout); Review Comment: OK, it sounds like you have a plan. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org