Подключитесь к JMX с помощью PowerShell - PullRequest
1 голос
/ 03 августа 2011

Я не разработчик, поэтому имейте это в виду при чтении следующего сообщения:

Мне нужно иметь возможность использовать Windows PowerShell для подключения к агенту JMX RMI на хосте, возможно ли это?

Ниже приведен пример строки из java-клиента, приведенной ниже:

JMXServiceURL url = new JMXServiceURL ("service: jmx: rmi: /// jndi / rmi: //localhost: 7979 / jmxrmi ");

Причина этого заключается в том, что я выполняю другую работу в своем скрипте PowerShell и хотел бы хранить все это в одном месте.

Спасибо!

1 Ответ

3 голосов
/ 04 августа 2011

Это необычное сочетание двух технологий, но это возможно.

Если вы пытаетесь подключиться к серверу JBoss, самый быстрый способ для вас - вызвать twiddle , командный инструмент, который будет отправлять запросы JMX на целевой сервер JBoss и вернуть результаты в стандартный вывод.

Другой способ - внедрить агент Jolokia на целевых серверах. Это позволит вам выдавать JMX-запросы с использованием REST. Ответы также будут возвращены в формате REST, который можно обработать в PowerShell, используя одно из этих решений .

В-третьих, вы также можете развернуть сервис JMX-WS на ваших целевых серверах, который позволит вам взаимодействовать с сервером JMX с помощью веб-сервисов. Этот документ предоставляет некоторые примеры этого на VBScript.

Ничто из вышеперечисленного на самом деле не использует описанный вами синтаксис JMXServiceURL, и я не могу придумать, каким образом вы могли бы реально интегрировать этот основанный на RMI протокол в PowerShell, но, надеюсь, что одно из вышеперечисленного подойдет вам.

========== ОБНОВЛЕНИЕ ==========

Может быть способ использовать реализацию RMI. Взгляните на IKVM . Это байт-код Java для компилятора .NET. Я успешно скомпилировал Java-код JMX / RMI в сборку .Net и использовал его из C #. Я думаю PowerShell сделает то же самое.

...