Jump to: navigation, search

Difference between revisions of "Jetty/Feature/JMX"

< Jetty‎ | Feature
Line 18: Line 18:
 
# MBeans need to be accessed by JMX agents.
 
# MBeans need to be accessed by JMX agents.
  
Jetty JMX integration uses platform MBean server implementation provided by Java VM. It is based on the ObjectMBean implementation of DynamicMBean. This implementation allows an arbitrary POJO to be wrapped in an MBean and for meta data to be provided by [http://dev.eclipse.org/viewcvs/index.cgi/jetty/trunk/jetty-jmx/src/main/resources/org/eclipse/jetty/?root=RT_Jetty properties files].  
+
Jetty JMX integration uses platform MBean server implementation provided by Java VM. The integration is based on the ObjectMBean implementation of DynamicMBean. This implementation allows an arbitrary POJO to be wrapped in an MBean and for meta data to be provided by [http://dev.eclipse.org/viewcvs/index.cgi/jetty/trunk/jetty-jmx/src/main/resources/org/eclipse/jetty/?root=RT_Jetty properties files].  
  
 
The creation of MBeans is coordinated by the MBeanContainer implementation of the Container.Listener interface. The Jetty Server and it's components use a [http://download.eclipse.org/jetty/stable-7/apidocs/org/eclipse/jetty/util/component/Container.html Container] to maintain a containment tree of components and to support notification of changes to that tree. The MBeanContainer class listens for Container events and creates and destroys MBeans as required to wrap all Jetty components.
 
The creation of MBeans is coordinated by the MBeanContainer implementation of the Container.Listener interface. The Jetty Server and it's components use a [http://download.eclipse.org/jetty/stable-7/apidocs/org/eclipse/jetty/util/component/Container.html Container] to maintain a containment tree of components and to support notification of changes to that tree. The MBeanContainer class listens for Container events and creates and destroys MBeans as required to wrap all Jetty components.
  
JMX agents can access the MBeans published by Jetty through built-in Java VM connector (JConsole), or by registering a remote JMX connector.
+
MBeans published by Jetty can be accessed both through built-in Java VM connector via JConsole, or by registering a remote JMX connector and using a remote JMX agent to monitor Jetty.
 
   
 
   
 
| more =
 
| more =

Revision as of 20:22, 22 December 2009



Introduction

Java Management Extensions (JMX) API is a standard API for management and monitoring of resources such as applications, devices, services, and the Java virtual machine. The JMX technology was developed through the Java Community Process.

Typical uses of the JMX technology include:

  • Consulting and changing application configuration.
  • Accumulating statistics about application behavior and making them available.
  • Notifying of state changes and erroneous conditions.

The JMX API includes remote access, so a remote management program can interact with a running application for these purposes.

Feature

Jetty JMX integration can be configured via etc/jetty-jmx.xml configuration file. See Jetty JMX tutorial for instructions on how to configure Jetty JMX integration.

In order to monitor an application using JMX, the following steps have to be performed:

  1. Application should instantiate an MBean container.
  2. Objects have to be instrumented to be MBeans.
  3. MBeans need to be accessed by JMX agents.

Jetty JMX integration uses platform MBean server implementation provided by Java VM. The integration is based on the ObjectMBean implementation of DynamicMBean. This implementation allows an arbitrary POJO to be wrapped in an MBean and for meta data to be provided by properties files.

The creation of MBeans is coordinated by the MBeanContainer implementation of the Container.Listener interface. The Jetty Server and it's components use a Container to maintain a containment tree of components and to support notification of changes to that tree. The MBeanContainer class listens for Container events and creates and destroys MBeans as required to wrap all Jetty components.

MBeans published by Jetty can be accessed both through built-in Java VM connector via JConsole, or by registering a remote JMX connector and using a remote JMX agent to monitor Jetty.

Additional Resources

See Jetty JMX tutorial for instructions on how to configure Jetty JMX integration.