Есть ли существующие настройки/агент/код, которые позволят мне собирать, и легко пересылать данные JMX на удаленный сервер: порт?отправить данные JMX на удаленный сервер (JMX-форвардер?)
java -DjmxForwardAddr=x.x.x.x -DjmxForwardPort=12345 ... ?
Контекст: Я использую Splunk для поиска корпоративных данных/отчетности, и хотел бы настроить его с помощью JMX слушателя (легкая часть) и настроить все виртуальные машины как-то просто доставить эти данные, как JSON/XML/etc для Splunk.
Я ищу подход «push», а не метод «pull», где я выделяю и управляю тысячами портов и опросу их.
У нас есть много приложений, и я бы хотел, чтобы вы просто настраивали запуск, чтобы включить это.
Java и JMX - это не то, с чем у меня есть много опыта, поэтому, возможно, я ищу неправильные условия/задаю неправильные вопросы. Я открыт для любых лучших способов приблизиться к этому.
Редактировать 2016/09/01:
Я не смог найти что-нибудь маленькое и надежное, чтобы сделать это. Благодаря исследованиям я также стал беспокоиться об этом подходе (работает как агент Java), поскольку любое неправильное поведение может негативно повлиять на родительскую программу.
Принимая внешний подход, я, хотя jmxtrans, подойдет к счету. Он работал несколько, но все равно потребовался бы написание пользовательского Output Writer для очистки вывода для Splunk.
В настоящее время я продвигаюсь вперед с помощью поставляемого по сети Splunk solution, который опроса настраиваемого списка целей и глотает эти данные. Не всегда можно получить то, что вы хотите (если вы не напишете его сами ...)
Это действительно полезно, но я искал что-то уже построенное. –
Вы имеете в виду что-то вроде appdynamics? –
возможно, хотя я не знаком с этим. CA APM (wily/introscope) имеет эту функциональность, в которой он отправляет метрики на центральный сервер. –