получить количество сообщений и последнее смещение каждого раздела темы в Java - PullRequest
0 голосов
/ 22 января 2019

Использование Admin Client для связи с Kafka в коде Java.мы можем сделать все операции CRUD по конкретной теме.Наше новое требование - получить количество сообщений для темы, размер всех сообщений для темы, последнее смещение для каждого раздела темы.

Входные данные: список брокеров и ожидаемые выходные данные темы, как показано ниже для 5 разделов

{
  "total": 10,
  "partitions": [
    3,
    2,
    1,
    3,
    1
  ],
  "offsets": [
    10,
    9,
    9,
    11,
    12
  ]
}

Total - это размер сообщения в байтах.

Попытка с использованием идентификатора группы потребителей.Здесь мы сможем получить данные только в том случае, если тема используется. Мы хотим получить подробные сведения о теме независимо от того, используется она или нет.

Пожалуйста, предложите возможные аппроксимации

1 Ответ

0 голосов
/ 22 января 2019

Используя командную строку, вы можете собирать смещения для каждого раздела темы следующим образом:

kafka%~ bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic mytopic1 

Возвращает смещения для раздела, как показано ниже:

mytopic1:2:828012
mytopic1:1:827041
mytopic1:3:829577
mytopic1:0:829184

ЗдесьВы можете сослаться более подробно: https://cwiki.apache.org/confluence/display/KAFKA/System+Tools

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...