Демон на основе командной строки для Java Mission Control? Альтернативы?

Меня попросили исследовать Oracle Java Mission Control, чтобы можно было отслеживать серверные Java-приложения и предпринимать действия (например, отправлять и регистрировать предупреждения, сохранять записи о полетах) при определенных условиях. Система триггеров Java Mission Control, где вы указываете условия и действия, отвечает нашим потребностям, но, похоже, она зависит от того, какое приложение GUI ("Oracle Java Mission Control") работает, подразумевая, что триггеры не являются обязанностью отслеживаемого сервера JMX. Это тот случай? Есть ряд серверов, обычно доступных через терминал...

Есть ли способ запустить Java Mission Control в качестве демона из сеанса терминала без присмотра, сохраняя и выполняя любые указанные правила триггера (например, импортированные из файла XML)?

Если нет, существуют ли конкурирующие инструменты с аналогичной триггерной системой, которая может заполнить пустоту?

Спасибо!:)

2 ответа

Решение

В настоящее время нет, вы не можете запустить JMC без графического интерфейса. Вы не первый человек, который хочет сделать это.

Один из вариантов - запустить JMC на другом компьютере и подключить его ко многим серверам, что, конечно, требует запуска удаленного агента JMX и т. Д.

Мы обсуждали триггеры / правила на стороне сервера, но AFAIK, это не запланировано ни для какого выпуска JDK.

Можно выгрузить записи о полете из кода, чтобы вы могли написать свой собственный маленький агент, который использует DiagnosticMBean, чтобы сделать это на другой JVM на том же компьютере или удаленно. Я почти уверен, что некоторые люди решают такую ​​же проблему. Также возможно анализировать и анализировать записи полета в коде. Если вы заинтересованы в этом подходе, я уверен, что есть некоторый пример кода, конечно, это больше работы, чем если бы JMC мог работать как демон:/

Вам, вероятно, стоит взглянуть на инструмент APM вместо мониторинга с помощью JMC. Продукт очень слабый, вносит много накладных расходов (что делает его непригодным для производства) и создает много проблем. Есть также инструменты, ориентированные на разработчиков.

APM: AppDynamics (самый глубокий из всех), New Relic, Ruxit Java Инструменты разработчика: Takipi, Fusion Reactor, Javosize

Другие вопросы по тегам