JMX Management Beans Support
HST provides built-in JMX Management Beans to manage session pools, caches, etc.
1. How to enable JMX MBeans support in HST applications
By default, HST Container registers JMX MBeans for Session Pools, Session Pool Counters, etc. You don't have to configure anything for JMX MBeans support.
However, if you want to allow remote access, then you may configure some JVM system properties like the following example:
-Dcom.sun.management.jmxremote \ -Dcom.sun.management.jmxremote.port=%my.jmx.port% \ -Dcom.sun.management.jmxremote.ssl=false \ -Dcom.sun.management.jmxremote.authenticate=false
Now, if you replace %my.jmx.port% with 9875, for instance, then you can browse the JMX MBeans by using jconsole command, which is located in the $JAVA_HOME/bin directory:
You may choose one local JMX agent from a local JVM instance by selecting one from the command line names and process IDs in the list.
Or if you enable remote access for the JMX through RMI, then you may run a command like the following. You will need to configure a proper security mechanism (e.g., ssl, authentication option or password files).
$ jconsole service:jmx:rmi:///jndi/rmi://localhost:9875/jmxrmi
For more information about enable remote JMX access, see [ http://docs.oracle.com/javase/6/docs/technotes/guides/management/agent.html.
Also see the following page for Tomcat environment:
If you want, you can also install a JMX MBeans management web application to allow remote access, such as jManage.
Also, you can simply add your own MBeans because HST Container support MBeans with Spring Framework JMX Integration Support.
2. Built-in MBeans
The following built-in MBeans are provided for session pools:
Each MBean above represents org.hippoecm.hst.core.jcr.pool.PoolingRepositoryMBean or org.hippoecm.hst.core.jcr.pool.PoolingCounterMBean. The former represents the pool configurations and current states, while the latter represents (increasing) counters for monitoring purpose.
Also, HST exports Ehcache MBeans by default. HST BinariesServlet uses Ehcache based cache for better response. So, you can monitor Ehcache MBeans automatically. See [ 1 ] for details to monitor Ehcache.