Команда TOPIC_SHOW

Содержание раздела
  1. Синтаксис
    1. Параметры
    2. Ключевые слова
      1. --connect
      2. --topic
      3. --kafkaBrokers
      4. --consumerGroup
  2. Примеры
    1. Вывод информации для всех консьюмер-групп
    2. Вывод информации для одной консьюмер-группы
  3. Варианты вывода команды

Команда TOPIC_SHOW выводит следующую метаинформацию по топику Kafka для одной или всех консьюмер-групп:

  • GROUP — имя консьюмер-группы, подписанной на топик,
  • PARTITION — номер партиции топика,
  • CURRENT-OFFSET — прочитанное смещение консьюмер-группы,
  • LOG-END-OFFSET — записанное смещение,
  • LAG — разница между записанным и прочитанным смещением.

По умолчанию команда считывает информацию из топика того брокера сообщений, который задан в конфигурации с помощью параметра ZOOKEEPER_KAFKA_ADDRESS. Чтобы вывести метаинформацию по топику другого брокера сообщений, укажите в команде ключевое слово kafkaBrokers с адресом нужного брокера.

По умолчанию команда выводит информацию по всем консьюмер-группам, подписанным на топик. Чтобы вывести информацию по одной консьюмер-группе, укажите в команде ключевое слово consumerGroup с именем группы.

Синтаксис

java -jar <dtm_tools_file_name>.jar \
--connect <prostore_host>:<prostore_port> \
topic_show \
--topic <topic_name> \
[--kafkaBrokers <kafka_broker_list>] \
[--consumerGroup <consumer_group>]

Параметры

dtm_tools_file_name

Имя jar-файла утилиты DTM Tools.

Ключевые слова

--connect

Задает строку подключения к ноде Prostore. Значение состоит из следующих элементов:

  1. prostore_host — IP-адрес или доменное имея ноды Prostore;
  2. prostore_port — номер порта для подключения к ноде Prostore, равный значению параметра конфигурации DTM_CORE_HTTP_PORT.

--topic

Задает имя топика Kafka, по которому запрашивается информация.

--kafkaBrokers

Задает список адресов брокеров Kafka, содержащих топик. Значение указывается в формате host1:port1,host2:port2,..hostN:portN.

Ключевое слово нужно указывать, если список брокеров отличается от значения параметра конфигурации ZOOKEEPER_KAFKA_ADDRESS.

--consumerGroup

Задает имя консьюмер-группы, для которой запрашивается информация по топику. Значение должно соответствовать имени, заданному в конфигурации ноды Prostore.

Если ключевое слово не указано, команда выдает информацию для всех консьюмер-групп, подписанных на топик.

Примеры

Вывод информации для всех консьюмер-групп

Для брокера сообщений, заданного в конфигурации:

java -jar dtm-tools-1.19.jar --connect 10.92.3.86:9090 topic_show --topic sales_700

Для указанных брокеров сообщений:

java -jar dtm-tools-1.19.jar --connect 10.92.3.86:9090 topic_show --topic sales_800 --kafkaBrokers 10.123.2.43:9092,10.123.2.44:9092

Вывод информации для одной консьюмер-группы

Для брокера сообщений, заданного в конфигурации:

java -jar dtm-tools-1.19.jar --connect 10.92.3.86:9090 topic_show --topic sales_700 --consumerGroup adp-load

Для указанных брокеров сообщений:

java -jar dtm-tools-1.19.jar --connect 10.92.3.86:9090 topic_show --topic sales_800 --kafkaBrokers 10.123.2.43:9092,10.123.2.44:9092 --consumerGroup adb-emulator-load-adb

Варианты вывода команды

При успешном выполнении команды выводится информация о топике, при неуспешном — текст ошибки. Если в топике нет прочитанных смещений, команда возвращает пустой результат.

Ниже показаны примеры вывода при успешном выполнении команды и наличии консьюмер-групп, подписанных на топик. На первом рисунке показан вывод по всем консьюмер-группам топика, на втором — по одной из них.

Пример вывода информации по топику для всех консьюмер-групп

Пример вывода информации по топику для одной консьюмер-группы