Small utility to get consumer lag from Kafka-stored consumer offsets.
There are 2 type of usage.
-
Using command line args:
kafka-consumer-lag --brokers kafka01.home:6667,kafka02.home:6667 --topic topic_name --group-id consumer_group_id
The output of the command will be:
consumer_group_id topic_name consumer_group_id 123
Where 123 is an aggregated lag.
-
Using stdin:
echo "consumer_group_id1 topic_name1" >> tmp.txt echo "consumer_group_id2 topic_name2" >> tmp.txt cat tmp.txt | kafka-consumer-lag --brokers kafka01.home:6667,kafka02.home:6667
The output of the command will be:
consumer_group_id1 topic_name1 123 consumer_group_id2 topic_name2 321
Also there is “timelag” command available:
kafka-consumer-lag --brokers kafka01.home:6667,kafka02.home:6667 --topic topic_name --group-id consumer_group_id --command lag_and_time
The output of the command will be:
consumer_group_id topic_name 456 123
Where 456 is lag in messages and 123 is lag in seconds for the last consumed message.
Compile for ubuntu:
env GOOS=linux GOARCH=amd64 go build -o kafka-consumer-lag-ubuntu