Differences between revisions 17 and 18
Revision 17 as of 2008-04-15 19:13:48
Size: 7682
Comment:
Revision 18 as of 2009-09-20 22:12:50
Size: 7700
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
[[TableOfContents(2)]] <<TableOfContents(2)>>
Line 9: Line 9:
[http://issues.apache.org/jira/browse/DERBY Jira] is the issue tracking system used by the Apache Derby project. Here is a list of some of the issues relating to JMX: [[http://issues.apache.org/jira/browse/DERBY|Jira]] is the issue tracking system used by the Apache Derby project. Here is a list of some of the issues relating to JMX:
Line 11: Line 11:
 * [https://issues.apache.org/jira/browse/DERBY-1387 DERBY-1387] - Add JMX extensions to Derby
 * [https://issues.apache.org/jira/browse/DERBY-3385 DERBY-3385] - Tests for JMX Management and Monitoring
 * [https://issues.apache.org/jira/browse/DERBY-3424 DERBY-3424] - Add a management MBean to control JMX state
 * [https://issues.apache.org/jira/browse/DERBY-3429 DERBY-3429] - Remove system property derby.system.jmx
 * [https://issues.apache.org/jira/browse/DERBY-3435 DERBY-3435] - Add an MBean for monitoring and managing the Network Server
 * [[https://issues.apache.org/jira/browse/DERBY-1387|DERBY-1387]] - Add JMX extensions to Derby
 * [[https://issues.apache.org/jira/browse/DERBY-3385|DERBY-3385]] - Tests for JMX Management and Monitoring
 * [[https://issues.apache.org/jira/browse/DERBY-3424|DERBY-3424]] - Add a management MBean to control JMX state
 * [[https://issues.apache.org/jira/browse/DERBY-3429|DERBY-3429]] - Remove system property derby.system.jmx
 * [[https://issues.apache.org/jira/browse/DERBY-3435|DERBY-3435]] - Add an MBean for monitoring and managing the Network Server
Line 17: Line 17:
There is a separate JMX component for Derby in Jira. Search for [http://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&mode=hide&pid=10594&sorter/order=DESC&sorter/field=priority&resolution=-1&component=12312171 issues with the JMX component] to get an updated list of all JMX related issues. There is a separate JMX component for Derby in Jira. Search for [[http://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&mode=hide&pid=10594&sorter/order=DESC&sorter/field=priority&resolution=-1&component=12312171|issues with the JMX component]] to get an updated list of all JMX related issues.
Line 19: Line 19:
[[Anchor(Resources)]] <<Anchor(Resources)>>
Line 24: Line 24:
 * [http://java.sun.com/j2se/1.5.0/docs/guide/jmx/index.html JDK 5.0 JMX-related APIs & Developer Guides]
 * [http://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html JMX 1.2 specification (JSR-003)]
 * [http://jcp.org/aboutJava/communityprocess/final/jsr160/index.html JMX Remote API specification (JSR-160)]
 * [http://java.sun.com/j2se/1.5.0/docs/guide/management/agent.html J2SE 5.0 Platform Monitoring and Management]
 * [http://java.sun.com/javase/6/docs/technotes/guides/management/toc.html Java SE 6 Monitoring and Management Guide]
 * [http://java.sun.com/javase/technologies/core/mntr-mgmt/javamanagement/best-practices.jsp JMX Best Practices]
 * [http://java.sun.com/javase/6/docs/technotes/guides/jmx/tutorial/tutorialTOC.html Java SE 6 JMX Technology Tutorial]
 * [[http://java.sun.com/j2se/1.5.0/docs/guide/jmx/index.html|JDK 5.0 JMX-related APIs & Developer Guides]]
 * [[http://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html|JMX 1.2 specification (JSR-003)]]
 * [[http://jcp.org/aboutJava/communityprocess/final/jsr160/index.html|JMX Remote API specification (JSR-160)]]
 * [[http://java.sun.com/j2se/1.5.0/docs/guide/management/agent.html|J2SE 5.0 Platform Monitoring and Management]]
 * [[http://java.sun.com/javase/6/docs/technotes/guides/management/toc.html|Java SE 6 Monitoring and Management Guide]]
 * [[http://java.sun.com/javase/technologies/core/mntr-mgmt/javamanagement/best-practices.jsp|JMX Best Practices]]
 * [[http://java.sun.com/javase/6/docs/technotes/guides/jmx/tutorial/tutorialTOC.html|Java SE 6 JMX Technology Tutorial]]
Line 33: Line 33:
 * [http://blogs.sun.com/jmxetc JMX, SNMP, Java, etc...] - Daniel Fuchs blogs on JMX, SNMP, Java, etc.
    * [http://blogs.sun.com/jmxetc/entry/javax_management_standardmbean_when_and javax.management.StandardMBean: When and Why.]
 * [http://weblogs.java.net/blog/emcmanus/ Eamonn McManus's Blog] (JMX Spec Lead)
 * [http://blogs.sun.com/lmalventosa/ Luis-Miguel Alventosa's Blog]
 * [http://blogs.sun.com/jmxnetbeans/ Jean-Francois Denise : JMX, NetBeans and more!]
 * [[http://blogs.sun.com/jmxetc|JMX, SNMP, Java, etc...]] - Daniel Fuchs blogs on JMX, SNMP, Java, etc.
    * [[http://blogs.sun.com/jmxetc/entry/javax_management_standardmbean_when_and|javax.management.StandardMBean: When and Why.]]
 * [[http://weblogs.java.net/blog/emcmanus/|Eamonn McManus's Blog]] (JMX Spec Lead)
 * [[http://blogs.sun.com/lmalventosa/|Luis-Miguel Alventosa's Blog]]
 * [[http://blogs.sun.com/jmxnetbeans/|Jean-Francois Denise : JMX, NetBeans and more!]]
Line 41: Line 41:
 * JmxForDerbyProject - Description of the 2006 [wiki:Self:GoogleSummerOfCodeProjects Google Summer of Code] project, which was the first real initiative to add JMX extensions to Derby.
   * [wiki:Self:_Requirement_Specifications_for_Monitoring_%26_Management_Extensions_using_JMX Requirements]
   * [wiki:Self:High_Level_Design High level design]
 * ["JMXSecurityExpectations"] - a summary of the development community's security expectations with regards to the JMX features
 * [http://db.apache.org/derby/javadoc/publishedapi/jdbc3/org/apache/derby/mbeans/ Current API / Javadocs] (trunk/alpha)
 * JmxForDerbyProject - Description of the 2006 [[GoogleSummerOfCodeProjects|Google Summer of Code]] project, which was the first real initiative to add JMX extensions to Derby.
   * [[_Requirement_Specifications_for_Monitoring_&_Management_Extensions_using_JMX|Requirements]]
   * [[High_Level_Design|High level design]]
 * [[JMXSecurityExpectations]] - a summary of the development community's security expectations with regards to the JMX features
 * [[http://db.apache.org/derby/javadoc/publishedapi/jdbc3/org/apache/derby/mbeans/|Current API / Javadocs]] (trunk/alpha)
Line 56: Line 56:
 * `system` - A runtime identifier that allows Derby and applications to disambiguate multiple Derby systems in the same virtual machine but different class loaders. See the [http://db.apache.org/derby/javadoc/publishedapi/jdbc3/org/apache/derby/mbeans/package-summary.html org.apache.derby.mbeans package Javadoc overview] for details. In the MBean descriptions below, the system identifier is represented by the variable `<sysID>`. The value will vary between each time Derby is run, and will look like a multi-digit hexadecimal number such as a [http://en.wikipedia.org/wiki/Globally_Unique_Identifier GUID].  * `system` - A runtime identifier that allows Derby and applications to disambiguate multiple Derby systems in the same virtual machine but different class loaders. See the [[http://db.apache.org/derby/javadoc/publishedapi/jdbc3/org/apache/derby/mbeans/package-summary.html|org.apache.derby.mbeans package Javadoc overview]] for details. In the MBean descriptions below, the system identifier is represented by the variable `<sysID>`. The value will vary between each time Derby is run, and will look like a multi-digit hexadecimal number such as a [[http://en.wikipedia.org/wiki/Globally_Unique_Identifier|GUID]].
Line 106: Line 106:
[[Anchor(QuickStart)]] <<Anchor(QuickStart)>>
Line 109: Line 109:
See ["DerbyJMXQuickStart"] page. See [[DerbyJMXQuickStart]] page.
Line 114: Line 114:
[[AttachInfo]] <<AttachInfo>>

Parents: DerbyDevActivities, ServicesLinks

This page describes Derby's JMX extensions, a new feature set being developed for the first 10.4 release and beyond.

Jira issues

Jira is the issue tracking system used by the Apache Derby project. Here is a list of some of the issues relating to JMX:

  • DERBY-1387 - Add JMX extensions to Derby

  • DERBY-3385 - Tests for JMX Management and Monitoring

  • DERBY-3424 - Add a management MBean to control JMX state

  • DERBY-3429 - Remove system property derby.system.jmx

  • DERBY-3435 - Add an MBean for monitoring and managing the Network Server

There is a separate JMX component for Derby in Jira. Search for issues with the JMX component to get an updated list of all JMX related issues.

Generic JMX technology resources

JMX is an abbreviation for a Java technology called Java Management EXtensions, and is part of J2SE 5.0 and newer.

JMX-related blogs:

Derby-related JMX resources

Current MBeans

Each Derby MBean is defined by a Java interface in the package org.apache.derby.mbeans or any of its subpackages.

  • MBeans in the top-level mbeans package are included in derby.jar and are located in the java/engine source tree.

  • MBeans in the org.apache.derby.mbeans.drda package are included in derbynet.jar and are located in the java/drda source tree.

  • Other subpackages may be added later (e.g. tools).

The object name of each Derby MBean should be well-defined, and documented in the MBean interface's public Javadoc. Every Derby MBean is associated with the domain org.apache.derby and includes at least the following key-properties:

  • type - Typically the class name of the MBean's interface class without the package and without MBean. For example for org.apache.derby.mbeans.VersionMBean the key property type will be set to Version.

  • system - A runtime identifier that allows Derby and applications to disambiguate multiple Derby systems in the same virtual machine but different class loaders. See the org.apache.derby.mbeans package Javadoc overview for details. In the MBean descriptions below, the system identifier is represented by the variable <sysID>. The value will vary between each time Derby is run, and will look like a multi-digit hexadecimal number such as a GUID.

VersionMBean

  • org.apache.derby.mbeans.VersionMBean

  • Implementation: org.apache.derby.iapi.services.info.Version (not public)

  • ObjectName:

    • org.apache.derby:type=Version,system=<sysID>,jar=derby.jar (monitors derby.jar (the engine)), or

    • org.apache.derby:type=Version,system=<sysID>,jar=derbynet.jar (monitors derbynet.jar (the server))

  • Instruments:

    • org.apache.derby.iapi.services.info.ProductVersionHolder

  • Status: In trunk (since 2008-02-12). In 10.4 branch since its inception (2008-03-10, SVN 635491).

  • Description: Exposes version information about the running Derby system / jar file.

JDBCMBean

  • org.apache.derby.mbeans.JDBCMBean

  • Implementation: org.apache.derby.jdbc.JDBC (not public)

  • ObjectName: org.apache.derby:type=JDBC,system=<sysID>

  • Instruments:

    • org.apache.derby.jdbc.InternalDriver

    • org.apache.derby.iapi.services.info.JVMInfo

  • Status: In trunk (since 2008-02-14). In 10.4 branch since its inception (2008-03-10, SVN 635491).

  • Description: Exposes information about the JDBC driver.

ManagementMBean

  • org.apache.derby.mbeans.ManagementMBean

  • Implementation:

    • org.apache.derby.mbeans.Management (public; may be registered by JMX clients)

  • Extended by: org.apache.derby.iapi.services.jmx.ManagementService (interface; not public)

    • Implementation:

      • org.apache.derby.impl.services.jmx.JMXManagementService (not public)

      • org.apache.derby.impl.services.jmxnone.NoManagementService (not public) [empty implementation for environments without the required JMX support]

  • ObjectName: org.apache.derby:type=Management,system=<sysID> when registered by Derby

  • Instruments:

    • org.apache.derby.impl.services.jmx.JMXManagementService

  • Status: In trunk (since 2008-02-15). In 10.4 branch since its inception (2008-03-10, SVN 635491).

  • Description: Manages the state of Derby's MBeans (registered or not)

NetworkServerMBean

  • org.apache.derby.mbeans.drda.NetworkServerMBean

  • Implementation: org.apache.derby.impl.drda.NetworkServerMBeanImpl (not public)

  • ObjectName: org.apache.derby:type=NetworkServer,system=<sysID>

  • Instruments:

    • org.apache.derby.impl.drda.NetworkServerControlImpl

  • Status: In trunk (since 2008-02-20). In 10.4 branch since its inception (2008-03-10, SVN 635491).

  • Description: Monitors and manages a running instance of the Network Server.

JMX QUICK START - SEE DerbyJMXQuickStart PAGE

See DerbyJMXQuickStart page.


There are 0 attachment(s) stored for this page.

DerbyJMX (last edited 2009-09-20 22:12:50 by localhost)