Хранить графики (результаты) VisualVM в базе данных - PullRequest
3 голосов
/ 20 января 2012

Мне интересно, возможно ли сохранить результаты, показанные VisualVM (использование памяти, активность GC, куча ...) в базе данных, чтобы мы могли обратиться к ним позже?

Если у кого-то есть идея или лучшая альтернатива visualVm, я был бы благодарен.

Большое спасибо.

Ответы [ 2 ]

1 голос
/ 20 января 2012

Я не уверен, что вы подразумеваете под «проконсультироваться с ними позже», но если это означает, что вы хотите выполнить автономный анализ собранных данных VisualVM, вы можете создать «Снимок приложения» из отслеживаемого приложения. Этот моментальный снимок приложения содержит данные и графики, а также дампы потоков, дампы кучи и снимки ЦП / памяти, полученные во время мониторинга приложений.

1 голос
/ 20 января 2012

Все эти метрики могут быть получены с использованием JMX. Вы можете написать контролирующую Java-программу, которая подключается к внешней ( target ) JVM 'MBeanServer и выгружает выбранные метрики JMX в базу данных.

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

При этом нельзя ли просто записать интересные значения в журналы приложений (или, возможно, в какой-то выбранный файл) и обработать их в автономном режиме? Файлы журналов проще в обслуживании (структура журналов может удалить старые файлы) и доступ к ним (хранение в базе данных или запись в файл).

...