Java Management Extensions (JMX) is a Java technology that supplies tools for managing and monitoring applications, system objects, devices (such as printers) and service-oriented networks. Those resources are represented by objects called MBeans (for Managed Bean). In the API, classes can be dynamically loaded and instantiated.
Managing and monitoring applications can be designed and developed using the Java Dynamic Management Kit.
JSR 003 of the Java Community Process defined JMX 1.0, 1.1 and 1.2. JMX 2.0 was being developed under JSR 255, but this JSR was subsequently withdrawn. The JMX Remote API 1.0 for remote management and monitoring is specified by JSR 160. An extension of the JMX Remote API for Web Services was being developed under JSR 262.
Adopted early on by the J2EE community, JMX has been a part of J2SE since version 5.0. "JMX" is a trademark of Oracle Corporation.
<MLET CODE = ''class'' | OBJECT = ''serfile''
ARCHIVE = ''archiveList''
[CODEBASE = ''codebaseURL'']
[NAME = ''objectName'']
[VERSION = ''version'']
>
[arglist]
</MLET>
JMX is supported at various levels by different vendors:
- JMX is supported by Java application servers such as OpenCloud Rhino Application Server , JBoss, JOnAS, WebSphere Application Server, WebLogic, SAP NetWeaver Application Server, Oracle Application Server 10g and Sun Java System Application Server.
- JMX is supported by the UnboundID Directory Server, Directory Proxy Server, and Synchronization Server.
- Systems management tools that support the protocol include Empirix OneSight, GroundWork Monitor, Hyperic, HP OpenView, IBM Director, ITRS Geneos, Nimsoft NMS, OpenNMS, Zabbix, Zenoss Core, and Zyrion, SolarWinds, Uptime Infrastructure Monitor, and LogicMonitor.
- JMX is also supported by servlet containers such as Apache Tomcat. & Jetty (web server)
- MX4J is Open Source JMX for Enterprise Computing.
- jManage Archived 2020-08-03 at the Wayback Machine is an open source enterprise-grade JMX Console with Web and command-line interfaces.
- MC4J is an open source visual console for connecting to servers supporting JMX
- snmpAdaptor4j is an open source providing a simple access to MBeans via the SNMP protocol.
- jvmtop is a lightweight open source JMX monitoring tool for the command-line
- Prometheus can ingest JMX data via the JMX exporter which exposes metrics in Prometheus format.
- New Relic's on-host infrastructure agent collects JMX data which is shown in various charts in its observability platform's dashboard.
- Jolokia is a Java agent that exposes JMX over HTTP for easy access from non-Java systems.
"MLet (Java 2 Platform SE 5.0)".
Sun Microsystems. Retrieved 2008-06-22.
↑ UnboundID Corp. Archived 2012-03-06 at the Wayback Machine
↑ "JMX Exporter". GitHub. 14 February 2022.
↑ "Introduction to New Relic for Java | New Relic Documentation". docs.newrelic.com. Retrieved 2025-01-13.