Сбор метрик `kafka.producer` с использованием JMX - PullRequest
0 голосов
/ 31 декабря 2018

У меня работает брокер Kakfa, который я отслеживаю с помощью JMX.

Этот брокер является док-контейнером, работающим, так как процесс, запущенный с kafka-server-start.sh порт JMX 9999, отображается как и используется какпеременные окружения.

Когда я подключаюсь к порту JMX и пытаюсь перечислить все домены, я получаю следующее:

kafka
kafka.cluster
kafka.controller
kafka.coordinator.group
kafka.coordinator.transaction
kafka.log
kafka.network
kafka.server
kafka.utils

Я не вижу kafka.producer, что понятно, потому что производительдля этого брокера Kafka есть N число различных приложений, но на данный момент я запутался.

Как мне также получить метрики kafka.producer.Нужно ли выставлять метрики kafka.producer в каждом приложении N, которое выступает в роли производителя ИЛИ , есть ли какая-либо конфигурация, которая начинает собирать метрики kafka.producer только на брокере.

Как правильно это сделать.Пожалуйста, помогите.

Ответы [ 2 ]

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

Да, вы правы, чтобы получить метрики JMX производителя, вам нужно включить JMX во всех процессах, на которых выполняется экземпляр производителя kafka.

0 голосов
/ 31 декабря 2018

В этом контексте может быть полезно перефразировать , производя как запись по ненадежной сети .

С этой точки зрения, наиболее разумное место для измерения Написание характеристик представляется самим клиентом (т.е. в каждом «приложении», как вы его называете).

Если сообщения между производителем и брокером утеряны, вы все равно можете отправлять статистику, например, в локальное «хранилище метрик» (например, вы можете увидеть «всплеск» в record-retry-rate или какой-либо другой соответствующей метрике).

Кроме того, сопряжение метрик производителя Kafka с дополнительными локальными метриками может быть чрезвычайно полезным (статистика JVM, подробные бизнес-метрики и т. Д.).Имейте в виду, что клиент почти наверняка будет работать на другой машине в производственной среде и может зависеть от других факторов, чем сам брокер.

Если вы намереваетесь контролировать свое клиентское приложение (что, скорее всего, произойдет в любом случае), тогда я просто сделаю это там (т. Е. стандартный способ).

...