db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "John H. Embretsen (JIRA)" <j...@apache.org>
Subject [jira] Updated: (DERBY-3435) Add an MBean for monitoring and managing the Network Server
Date Wed, 20 Feb 2008 16:09:48 GMT

     [ https://issues.apache.org/jira/browse/DERBY-3435?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

John H. Embretsen updated DERBY-3435:
-------------------------------------

    Attachment: d3435_v01.stat
                d3435_v01.diff

The patch d3435_v01.diff defines and implements an MBean for monitoring
and (future work) management of the Network Server. 

Although the MBean works, it is currently limited to exposing read-only 
attributes only (i.e. no management functionality), in addition to the
ping() operation, so I consider this just to be a start of what could 
eventually become a very useful bean for server administrators. 

Patch contents:

A      java/engine/org/apache/derby/mbeans/drda

  New package for Network Server mbeans (included in derbynet.jar)


A      java/engine/org/apache/derby/mbeans/drda/NetworkServerMBean.java

  The defining interface of the MBean. The following read-only attributes are
  available:

    ([Attribute]            - [associated server property])
    DrdaHost                - derby.drda.host
    DrdaKeepAlive           - derby.drda.keepAlive
    DrdaMaxThreads          - derby.drda.maxThreads
    DrdaPortNumber          - derby.drda.portNumber
    DrdaSecurityMechanism   - derby.drda.securityMechanism
    DrdaSslMode             - derby.drda.sslMode
    DrdaStreamOutBufferSize - derby.drda.streamOutBufferSize
    DrdaTimeSlice           - derby.drda.timeSlice
    DrdaTraceAll            - derby.drda.traceAll
    DrdaTraceDirectory      - derby.drda.traceDirectory

  The ping() operation requires the permission

    permission java.net.SocketPermission "*", "connect,resolve";

  ("*" may be replaced, depending on the -h option of the server) 
  granted to derbynet.jar in order to work, due to the way the network
  server is currently implemented.

A      java/drda/org/apache/derby/impl/drda/NetworkServerMBeanImpl.java

  The implementation of NetworkServerMBean. Instruments NetworkServerControlImpl.


M      java/drda/org/apache/derby/impl/drda/NetworkServerControlImpl.java

  - removes some unused imports
  - registers the MBean at server startup
  - unregisters the MBean at server shutdown
  - relaxes the modifier of the method getPropertyValues() from private
    to package-private in order to allow access to server settings from the
    MBean impl. without having to use a network connection.


M      tools/javadoc/publishedapi.ant

  Adds org.apache.derby.mbeans.drda to the publishedAPI javadocs.


The patch includes some commented code copied from patch 9 of DERBY-1387,
as a temporary reminder of the functionality initially proposed as part of
that Jira issue. This code should eventually be removed and/or replaced by 
real code once the community agrees on and implements a security model for 
Derby's JMX functionality.


> Add an MBean for monitoring and managing the Network Server
> -----------------------------------------------------------
>
>                 Key: DERBY-3435
>                 URL: https://issues.apache.org/jira/browse/DERBY-3435
>             Project: Derby
>          Issue Type: Sub-task
>          Components: Network Server, Services
>            Reporter: John H. Embretsen
>            Assignee: John H. Embretsen
>         Attachments: d3435_v01.diff, d3435_v01.stat
>
>
> Most functionality of and information about a running instance of the Network Server
is currently only available from the host running the Network Server, using the NetworkServerControl
API.
> With a JMX Management and Monitoring service in place utilizing JMX (DERBY-1387), it
is possible to expose some of the Network Server functionality and information through an
MBean that is specific to the Network Server, to both local and remote users (JMX clients),
subject to security restrictions. Access to Derby libraries on the client side is not even
a requirement, potentially making a server administrator's job a lot easier.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message