У меня время от времени пытаюсь настроить сервер для обеспечения удаленного доступа JMX. Самый простой инструмент, который я нашел для подключения к серверу JMX, - это jconsole, но он не кажется отличным инструментом при повторном доступе к нескольким URL-адресам.Есть ли простой способ автоматического тестирования удаленных JMX-адресов?
Есть ли простой способ, желательно из командной строки, проверить, указывает ли конкретный URL на действительный сервер JMX? Например.
jmxTest service:jmx:rmi://192.168.0.101:1099/jndi/rmi://192.168.0.101:1099/jmxrmi
возвращение статус 0 для рабочего сервера и 1 для нерабочего один
Редактировать
Я попытался следующие, но это, кажется, работает даже тогда, когда первая половина JMX URL указывает на несуществующий IP:
JMXServiceURL url = new JMXServiceURL(urlAsString);
JMXConnector jmxc = JMXConnectorFactory.connect(url, null);
MBeanServerConnection mbsc = jmxc.getMBeanServerConnection();
mbsc.getDomains();
Если вы чувствуете, что JConsole так болезненно, я думаю, что другая альтернатива - это написать простой класс и изменить URL-адрес, когда вам нужно протестировать новый. – kosa