Package com.bakdata.kafka
Class ConsumerGroupVerifier
java.lang.Object
com.bakdata.kafka.ConsumerGroupVerifier
Utility class to verify the state of a Kafka consumer group
-
Constructor Summary
ConstructorsConstructorDescriptionConsumerGroupVerifier
(@NonNull String group, @NonNull Supplier<AdminClientX> adminClientSupplier) -
Method Summary
Modifier and TypeMethodDescriptionCompute lag of consumer groupOptional<org.apache.kafka.common.GroupState>
getState()
Get current state of consumer groupboolean
Check whether consumer group has assigned partitions and lag is 0boolean
isActive()
Check whether consumer group has stateGroupState.STABLE
boolean
isClosed()
Check whether consumer group has stateGroupState.EMPTY
static ConsumerGroupVerifier
verify
(ExecutableStreamsApp<?> app) Create a new verifier from anExecutableStreamsApp
-
Constructor Details
-
ConsumerGroupVerifier
public ConsumerGroupVerifier(@NonNull @NonNull String group, @NonNull @NonNull Supplier<AdminClientX> adminClientSupplier)
-
-
Method Details
-
verify
Create a new verifier from anExecutableStreamsApp
- Parameters:
app
- app to create verifier from- Returns:
- verifier
-
isActive
public boolean isActive()Check whether consumer group has stateGroupState.STABLE
- Returns:
- true if consumer group has state
GroupState.STABLE
-
isClosed
public boolean isClosed()Check whether consumer group has stateGroupState.EMPTY
- Returns:
- true if consumer group has state
GroupState.EMPTY
-
getState
Get current state of consumer group- Returns:
- current state of consumer group
-
hasFinishedProcessing
public boolean hasFinishedProcessing()Check whether consumer group has assigned partitions and lag is 0- Returns:
- true if consumer group has assigned partitions and lag is 0
-
computeLag
Compute lag of consumer group- Returns:
- lag of consumer group. If no partitions are assigned, an empty
Optional
is returned
-