我想了解一些基本的 Kafka
这样我就可以正确地监视基于kafkastreams的应用程序的进度。
特别是出于调试目的,我需要能够让我的应用程序重新使用整个主题。为此,我使用了重置工具。
在执行脚本后,我在kafka管理器中查看一些输入主题,发现 Consumer Offset
已经减少了 Lag
增加了(这是有道理的)。虽然 Consumer Offset
不会归零。我试图解释,但我还没有找到一个具体的解释是什么 Consumer Offset
以及 Logsize
在Kafka的经理都是指。
为了使它符合我所看到的我假设 Logsize
是自主题开始以来放入该主题的邮件总数,但不一定是主题中当前的邮件量。因为有些可能因为年龄超过保存期而被丢弃。我说得对吗?
如果不是,那么在为一些输入主题运行reset工具之后,我观察到 Consumer Offset
等于 Logsize
(而不是零)和 Lag
是零吗?
1条答案
按热度按时间6qfn3psc1#
我不熟悉
yahoo-kafka-manager
但是,您也可以使用bin/kafka-consumer-groups.sh
(Kafka自带的工具)。日志结束偏移意味着你所描述的。从命名的Angular 看,我不清楚Logsize
与“日志结束偏移量”相同,或者是分区中最高和最低偏移量之间的差异。在执行了脚本之后,我在kafka管理器中查看了一些输入主题,发现消费偏移量减少了,滞后增加了。
这是有意义的——因为“lag”是“log end offset”和“committed offset”的区别,所以在重置应用程序之后,应该增加滞后。但是,我不知道为什么提交的消费者组偏移量不是零(你能很清楚地看到你使用
bin/kafka-consumer-group.sh
--也许吧yahoo-kafka-manager
报告一些不同的情况)。更新:但是工具不会将偏移设置为零,而是设置为“日志开始”(文件不正确。)
还要注意的是
auto.offset.reset
策略可能在您重置应用程序并重新启动它之后生效(如果日志被截断,[committed]偏移量0可能无效)。这能解释你观察到的行为吗?这篇博文也可能有助于了解更多细节:https://www.confluent.io/blog/data-reprocessing-with-kafka-streams-resetting-a-streams-application/