Я пытаюсь получить доступ к значениям MBean через jmx и, в частности, getMBeanServerConnection.Настройка дерева в jconsole трудна для прохождения, и мне нужна помощь в получении значений, которые мне нужны или которые я могу получить, чтобы получить все типы, имена и атрибуты.Вот что я использовал для чтения значений jmx mbean:
//get an instance of the kafka metrics Mbean
consumerBeanII =
jmxCon.getMBeanServerConnection().getAttribute(new
ObjectName("kafka.server:type=BrokerTopicMetrics,
name=MessagesInPerSec,topic=data.in"),"MeanRate");
System.out.println(" Message Mean Rate: " + consumerBeanII);
// this works
consumerBean = jmxCon.getMBeanServerConnection().getAttribute(new
ObjectName("kafka.server:type=FetcherLagMetrics,
name=ConsumerLag,side=ReplicaFetcherThread-0-
2,topic=data.in"),"Value");
System.out.println(" ConsumerLag: " + consumerBean);
//this does not work and throws exception
Ошибка:
javax.management.InstanceNotFoundException:
kafka.server:type=FetcherLagMetrics,name=ConsumerLag,
side=ReplicaFetcherThread-0-2,topic=data.in
Теперь вот снимок дерева и иерархии jconsole:
, поэтому в основном это выглядит следующим образом:
kafka.server ---> FetcherLagMetrics --> ConsumerLag --->
ReplicaFetcherThread-0-2 ---> data.in ---> 5 ---> Attributes --->
Value
В ConsumerLag (ReplicateFetcherThread. *) Есть несколько подпапок, а затем все темы в каждой изэти папки.Но, похоже, значение = 0 для всех, что в любом случае является отдельной проблемой.Любые советы или помощь приветствуются