jcmd - Для чего используется команда ManagementAgent.start?
Когда используешь jcmd
для мониторинга процесса Java, есть команда ManagementAgent.start
,
Проверка справочной страницы / документа оракула / Google, не нашла описания.
Вопрос в том:
- Для чего его используют?
3 ответа
Эта команда запускает удаленный агент JMX, как будто -Dcom.sun.management.jmxremote
Аргумент командной строки установлен. См. Мониторинг и управление с использованием технологии JMX.
ManagementAgent.stop: остановить агент удаленного управления.
ManagementAgent.start: запустить модуль удаленного управления
ManagementAgent.start_local: запустить локальный агент управления.
Вы можете получить пример по ссылке ниже.
https://self-learning-java-tutorial.blogspot.com/2018/08/jcmd-managementagentstop.html
The ManagementAgent
команды jcmd будут вызывать методыjdk.internal.agent.Agent
класс на целевой JVM:
-
start
звонкиstartRemoteManagementAgent()
, - звонки
startLocalManagementAgent()
, -
stop
звонкиstopRemoteManagementAgent()
, - звонки
getManagementAgentStatus()
.
По сути, первые два типа запускают сервер коннектора JMX (каждый с разными параметрами) для сервера платформы MBean целевой JVM. status
Команда полезна для получения информации о работающих агентах JMX.
Исходный код дляstart_local
: https://github.com/openjdk/jdk/blob/master/src/hotspot/share/services/diagnosticCommand.cpp#L736