[英]Python confluent_kafka: consume(0) cannot trigger callbacks
I am using confluent-kafka-python and librdkafka .我正在使用confluent-kafka-python和librdkafka 。
But I think, confluent_kafka.Consumer.consume(0) cannot trigger stats_cb.但我认为, confluent_kafka.Consumer.consume(0)不能触发 stats_cb。
Consumer_consume(0) => rd_kafka_consume_batch_queue => rd_kafka_q_serve_rkmessages Consumer_consume(0) => rd_kafka_consume_batch_queue => rd_kafka_q_serve_rkmessages
In, rd_kafka_poll_cb
is called in the while (cnt < rkmessages_size) loop
.在,
rd_kafka_poll_cb
在while (cnt < rkmessages_size) loop
被调用。 If rkmessages_size
is 0, it is not called.如果
rkmessages_size
为 0,则不会调用它。
In this case, rk_rep
may become larger and larger.在这种情况下,
rk_rep
可能会越来越大。
How to trigger stats_cb in Consumer_consume(0)
?如何在
Consumer_consume(0)
触发 stats_cb ? Thanks谢谢
Callbacks are served from rd_kafka_q_serve_rkmessages()
: https://github.com/edenhill/librdkafka/blob/b50e247b77864c595569f7f7e9ec8dde63258210/src/rdkafka_queue.c#L574回调由
rd_kafka_q_serve_rkmessages()
: https : //github.com/edenhill/librdkafka/blob/b50e247b77864c595569f7f7e9ec8dde63258210/src/rdkafka_queue.c#L57
If you're not seeing your stats_cb being triggered, make sure that statistics.interval.ms
is set to a non-zero value.如果您没有看到 stats_cb 被触发,请确保将
statistics.interval.ms
设置为非零值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.