JMX сообщает о неправильных измерениях и собирает их для Apache Kafka
Я использую JMX для сбора метрик из Apache Kafka и отправки в Librato, сервис визуализации и мониторинга, через collectd. Проблема в том, что некоторые метрики, кажется, сообщают неправильно. Например, когда никто не использует кластер Kafka, некоторые узлы сообщают о большом количестве входящих сообщений за минуту (например, 15 000), тогда как другие сообщают 0, как и ожидалось.
Вот одна из конфигураций метрики в collectd:
<MBean "kafka-all-messages">
ObjectName "kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec"
InstancePrefix "all"
<Value>
InstancePrefix "kafka-messages-in"
Type "counter"
Table false
Attribute "MeanRate"
</Value>
</MBean>
А вот график в Либрато:
Кто-нибудь знает, что идет не так? Это моя сборная конфигурация, такая как Type
или что-нибудь подобное?
1 ответ
Небольшое продолжение по этому вопросу: это не было ни JMX, ни собранных ошибок. Я проверил JMX, collectd и Librato с постоянными значениями, выполнив вход непосредственно каждому брокеру Kafka и прочитав значения в их MBean-компонентах.
Проблема заключалась в том, что мы использовали клиенты Kafka со слишком малым интервалом автоматической фиксации, что приводило к огромному количеству сообщений, отправляемых каждому брокеру Kafka.