OpenJPA
  1. OpenJPA
  2. OPENJPA-1739

Add pluggable instrumentation and instrumentation provider capabilities to OpenJPA

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.1.0
    • Fix Version/s: 2.1.0
    • Component/s: instrumentation
    • Labels:
      None

      Description

      I've been working in a pluggable instrumentation framework for OpenJPA that could provide out-of-band accessibility instrumentation of various components. I've started with the simple ones, DataCache & QueryCache , since they are currently instrumented (in-band). The framework provides pluggability of instrumentation providers and components via standard configuration. I have a JMX-based implementation in the works, but the framework will be designed such that other providers and instrumentation can be plugged in as well. The JMX provider will allow for remote, out-of-band monitoring (and eventual control) of whatever is being instrumented. For example, caches, SQL execution, enhancement, etc. could be instrumented. I'll be incrementally committing bits and pieces of this function over the next several weeks for comment & review.

        Activity

        Hide
        Pinaki Poddar added a comment -

        A very useful project.

        1. Would you consider using Attach API for remote connectivity?

        2. What are the candidate technologies for visualization/control widgets? At least to begin with? Web, Swing, RCP/IDE?

        3. Are you planning to create a openjpa-tools module for check-in the code contributions? Or else?

        Show
        Pinaki Poddar added a comment - A very useful project. 1. Would you consider using Attach API for remote connectivity? 2. What are the candidate technologies for visualization/control widgets? At least to begin with? Web, Swing, RCP/IDE? 3. Are you planning to create a openjpa-tools module for check-in the code contributions? Or else?
        Hide
        Jeremy Bauer added a comment -

        Committed rev 1 of this feature under revision 981719. Includes base support for an instrumentation manager, instrumentation providers, and instruments. In addition, there are the beginnings of instruments for data cache, query cache, and prepared query cache and a JMX platform MBean provider. Updates, fixes, doc and more tests to follow...

        @Pinaki - I answered your questions several days ago, but the comment didn't get make it into the JIRA for whatever reason.

        1) Platform MBean supported included with the JDK provides remote connectivity with a very small amount of configuration. The JMX provider I'm working on is based on that. A provider for another remote-able technology could be plugged in as well.

        2) Initially, the goal will be to provide simple callable MBean API interfaces. A control or widget can use standard JMX calls to get metrics from various sources.

        3) The base "enablement" will go into OpenJPA. Tools built on top of the instrumentation should go elsewhere. Most likely devtools.

        Show
        Jeremy Bauer added a comment - Committed rev 1 of this feature under revision 981719. Includes base support for an instrumentation manager, instrumentation providers, and instruments. In addition, there are the beginnings of instruments for data cache, query cache, and prepared query cache and a JMX platform MBean provider. Updates, fixes, doc and more tests to follow... @Pinaki - I answered your questions several days ago, but the comment didn't get make it into the JIRA for whatever reason. 1) Platform MBean supported included with the JDK provides remote connectivity with a very small amount of configuration. The JMX provider I'm working on is based on that. A provider for another remote-able technology could be plugged in as well. 2) Initially, the goal will be to provide simple callable MBean API interfaces. A control or widget can use standard JMX calls to get metrics from various sources. 3) The base "enablement" will go into OpenJPA. Tools built on top of the instrumentation should go elsewhere. Most likely devtools.
        Hide
        Michael Dick added a comment -

        Closing issue which has been resolved for some time. If you believe the issue is not resolved please reopen or open a new issue.

        Show
        Michael Dick added a comment - Closing issue which has been resolved for some time. If you believe the issue is not resolved please reopen or open a new issue.

          People

          • Assignee:
            Jeremy Bauer
            Reporter:
            Jeremy Bauer
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development