Рубрики
Без рубрики

Как предоставить статистику гибернации с помощью JMX

Узнайте, как предоставлять статистику гибернации с помощью JMX, чтобы вы могли либо визуализировать показатели гибернации, либо экспортировать их в другие системы.

Автор оригинала: Vlad Mihalcea.

Вступление

Как уже объяснялось , Hibernate предоставляет очень гибкий механизм статистики. Доступ к метрикам Hibernate можно получить программно через org.hibernate.stat.Статистика интерфейс или через JMX (расширения управления Java).

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

Как предоставить статистику гибернации с помощью #Java Расширений управления https://t.co/1LfJcWYvHU pic.twitter.com/cam2NhCw47

Конфигурация

По умолчанию механизм статистики гибернации не включен, поэтому его необходимо активировать с помощью следующего свойства конфигурации:


Чтобы предоставить метрики гибернации через JMX, вам также необходимо установить свойство hibernate.jmx.enabled конфигурация:


Теперь Hibernate собирается собирать показатели и предоставлять их через JMX.

Не то чтобы из-за проблемы HHH-6190 объект Hibernate Statistics не был открыт через JMX. Эта проблема была исправлена в Hibernate ORM 5.4.2, поэтому рассмотрите возможность обновления версии Hibernate, если вы хотите воспользоваться этой функцией.

Время тестирования

Чтобы просмотреть статистические показатели Hibernate с помощью JMX, нам нужно открыть JConsole и подключить новое соединение к нашему приложению Hibernate. После этого вам нужно перейти на вкладку MBeans и найти пакет org.hibernate.core , как показано на следующем снимке экрана.

Обратите внимание на org.hibernate.stat.internal.StatisticsImpl MBean, который предоставляет доступ ко всем показателям, поддерживаемым интерфейсом Hibernate Statistics .

Круто, правда?

Вывод

Преимущество предоставления статистики гибернации с помощью JMX заключается в том, что вы можете дополнительно экспортировать эти показатели в инструмент APM (Мониторинг производительности приложений), который объединяет показатели из разных источников (например, ОС, базы данных, кэша) и сопоставляет их, чтобы вы могли лучше понять внутреннюю работу вашей системы.