Reputation: 2825
Is there any tool which would allow for monitoring Hibernate 2nd level cache usage? I know that I could use Hibernate API for retrieving such information. But what should I do when I have application which doesn't read the information itself, and I can't modify it? Is there any way to read cache statistics from the outside of the application?
Upvotes: 2
Views: 8897
Reputation: 31
There is a tool for monitoring hibernate's cache that has been exposed through JMX. Its called hibernate-jconsole and can be downloaded here - http://hibernate-jcons.sourceforge.net/
Upvotes: 3
Reputation: 3670
Implement
http://narcanti.keyboardsamurais.de/hibernate-statistics-jsp-reloaded.html
for "human" use
Upvotes: 1
Reputation: 570615
Quoting Hibernate documentation:
3.4.6. Hibernate statistics
If you enable
hibernate.generate_statistics
, Hibernate exposes a number of metrics that are useful when tuning a running system viaSessionFactory.getStatistics()
. Hibernate can even be configured to expose these statistics via JMX. Read the Javadoc of the interfaces inorg.hibernate.stats
for more information.
You'll find the org.hibernate.stats
package-summary here.
For the JMX part, have a look at Publishing statistics through JMX.
For more advanced stuff, you'll have to rely on specific features from your cache provider.
Upvotes: 7
Reputation: 7596
If your 2nd level cache is an EhCache, then you can read cache status from its MBean.
See 'JMX Management and Monitoring' in the ehcache documentation: http://ehcache.org/documentation/jmx.html
Upvotes: 3