Я слежу за показателями JM X, доступными на веб-сайте Apache для Kafka.Один из показателей указан ниже (обратите внимание на идентификатор клиента)
kafka.consumer:type=consumer-fetch-manager-metrics,client-id=([-.w]+)
В моем коде я использую его следующим образом:
args[2] = "kafka.consumer:type=consumer-fetch-manager-metrics,client-id=([-.w]+)";
args[3] = "records-lag-max"
ObjectName oName = new ObjectName(args[2]);
try {
try {
System.out.println(mbeanConn.getAttribute(oName, args[3]));
} catch (AttributeNotFoundException | MBeanException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Ошибка
javax.management.InstanceNotFoundException: kafka.consumer: type = customer-fetch-manager-метрики, идентификатор клиента = ([-. W] +)
javax.management.InstanceNotFoundException: kafka.consumer: type = consumer-fetch-manager-metrics, client-id = ([-. \ w] +)
Я заинтересован в получении records-lag-max что выглядит следующим образом: Максимальное отставание по количеству записей для любого раздела в этом окне.Увеличение значения с течением времени является вашим лучшим показателем того, что группа потребителей не поспевает за производителями
Правильно ли я использую метрику или мне нужно циклически обрабатывать все идентификаторы клиентов и получать метрики по отдельности ??