rdkafka потребительский запрос о размере раздела

Допустим, у меня нет доступа к набору производителей, которые фиксируют интересующий раздел, но я просто контролирую группу потребителей C ++.
Поскольку я запускаю тесты для сложной программы, я хотел бы знать разницу между смещением, которое получают мои потребители, и общим смещением, хранящимся в разделе.

например., >> reading message #1234 of 5678 total in partition 0 of topic foo

Я неправильно понял цель RdKafka::Consumer->outq_len() а также RdKafka::Topic->OFFSET_END, потому что они казаться всегда равно 0 а также -1соответственно.

Как я могу приобрести 5678 ценность моего примера?

1

Решение

Вам необходимо подписаться на librdkafkaстатистику, чтобы получить обновленное представление о задержке вашего потребителя.
Зарегистрировать Event Класс обратного вызова и регулярно звонить poll() на вашей ручке, проверьте EVENT_STATS а затем проанализируйте соответствующее сообщение JSON и найдите lo_offset, hi_offset а также consumer_lag,

2

Другие решения


По вопросам рекламы [email protected]