2017-08-03 42 views

回答

0

KafkaConsumer API提供的接口可以幫助您。有beginningOffsets(Collection<TopicPartition> partitions)endOffsets(Collection<TopicPartition> partitions)。您可以針對主題中的所有分區調用這些方法,然後查找每個主題分區的結束偏移量和起始偏移量之間的差異。然後聚合所有主題分區。這應該會爲您提供主題中的消息數量。 (reference

1

什麼瓦希德sayd可能是一個解決方案,但你也可以使用下面的一個:

bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic --time -1 

,那麼你必須要總結的計數值。

無論如何,如果日誌壓縮處於活動狀態,請考慮我的和vahid解決方案不起作用,因爲在這種情況下,偏移量之間可能存在一些「間隙」,因此只計算差異並不能爲您提供消息的數量。

相關問題