我必须记录消费者在春季卡夫卡活动所花费的时间。由于对每条消息执行kafkaListener方法,因此将记录器放在那儿是行不通的。同样,有时一些消息会丢失,并且不会被消费者使用。我应该把记录器放在哪里,以找出自消费者开始以来所花费的时间。使用者不会退出或关闭,它会无限期地轮询
答案 0 :(得分:0)
您可以设置idleEventInterval
容器属性,并使用ApplicationListener<ListenerContainerIdleEvent>
bean(或@EventListener
方法)来接收这些事件。
事件每idleEventInterval
发布一次,并包含一个idleTime
属性,这是自上次收到消息以来的时间。
对于开始时间,您可以查看partitions assigned
日志消息,也可以仅使用start()
容器的时间。