You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Sanket Sharma (JIRA)" <de...@db.apache.org> on 2006/08/21 13:46:16 UTC

[jira] Updated: (DERBY-1387) Add JMX extensions to Derby

     [ http://issues.apache.org/jira/browse/DERBY-1387?page=all ]

Sanket Sharma updated DERBY-1387:
---------------------------------

    Attachment: derbyjmx.patch

Submitting The Code for Derby's JMX Functionality as part of my Google SOC project.

The patch addresses the following: 

1) Start derby with monitoring extensions enabled. To start derby with monitoring extensions, you need to set derby.jmx environment variable while starting the JVM

2) Derby can be monitored locally or remotely. Password authentication and SSL support is provided via SUN's RMI connector implementations. See the following URL for details
http://java.sun.com/j2se/1.5.0/docs/guide/management/agent.html

3) The MBeans can be viewed in JConsole.

4) This implementation supports three different MBeans:

->SystemMBean for viewing and changing system properties. Please note that as of now changes are not persisted to derby.properties file
->DatabaseMBean, one per database. Any changes to database properties are persisted.
->VersionMBean for viewing DerbyVersion Information.

The code was built using JDK1.6 and uses Sun's PlatformMBean server for exposing system health and Derby's MBeans.

The code is up for review and contains the following files:

iapi/services/mbeans/ManagementService.java Interface declaration for management service
/iapi/services/mbeans/MBeanFactory Factory interface for creating MBeans

/impl/services/mbeans/BasicManagementService Management service that starts up MBeanServer and Registry
/impl/services/mbeans/BasicMBeanFactory Implementation of MBeanFactory interface
/impl/services/mbeans/DerbySystemMBean For exposing derby system properties
/impl/services/mbeans/DatabaseMBean For exposing a database's properties and operation for Stopping a database
/impl/services/mbeans/mbeans-descriptors.xml MBean descriptor used by Apache Commons modeler framework.

tools/jars/mbeansDBMSclass.properties lists the classes, so that they may be included in the derby jar.

Minor changes to build files and properties files have also been made to compile the code.

5) The JMX functionality was built using the Apache modeler commons framework available at http://commons.apache.org

6) This patch DOES NOT include any test cases. I will be posting them in a seperate patch, as the test cases themselves will amount to substantial code.

7)API docs are provided with the files.

I will *really* appreciate if someone can help me with identifying  which properties are System properties, which are database properties and which can be modified at runtime. I referred to iapi.reference.Property.java. However, I felt descriptions for some properties were ambiguous. The next iteration will probably be a fix for such properties.

I welcome any comments.

Best Regards,
Sanket Sharma




> Add JMX extensions to Derby
> ---------------------------
>
>                 Key: DERBY-1387
>                 URL: http://issues.apache.org/jira/browse/DERBY-1387
>             Project: Derby
>          Issue Type: New Feature
>          Components: Services
>            Reporter: Sanket Sharma
>         Assigned To: Sanket Sharma
>         Attachments: derbyjmx.patch, Requirements for JMX Updated.html, Requirements for JMX.html, Requirements for JMX.zip
>
>
> This is a draft requirement specification for adding monitoring and management extensions to Apache Derby using JMX. The requirements document has been uploaded on JIRA as well as the Derby Wiki page at http://wiki.apache.org/db-derby/_Requirement_Specifications_for_Monitoring_%26_Management_Extensions_using_JMX
> Developers and Users are requested to please look at the document (feature list in particular) and add their own rating to features by adding a coloumn to the table.
> Comments are welcome.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira