• Home
    • View
    • Login
    This page
    • Normal
    • Export PDF
    • Export Word
    • Attachments
    • Page Information

    Loading...
  1. Dashboard
  2. Mission Control
  3. Main
  4. The JMC Agent
  5. JMC Agent Probe Definition Format

JMC Agent Probe Definition Format

  • Created by Marcus Hirt, last modified on Nov 07, 2019

The following things would have to be part of the specification for a probe:

  • Data identifying the method to instrument (FQN for the class, method and descriptor)
  • Data identifying the parameters and/or return value to record as attributes
    • Parameters/Return values should be able to appear multiple times, with different access paths/converters
    • For following references in parameters/return values (via fields), we probably need to specify the type of the thing referenced in the end
    • May want to consider following references in the object being instrumented too (fields)
    • May also want to consider the this pointer (can be passed to a converter just like everything else)
  • Recording metadata (optional, should be able to generate "ok" defaults)
    • A name (label) (will not look very nice without, but perhaps take class name, and split along camel case boundaries as default?)
    • A description
    • enabled - should the event be enabled by default?
    • stacktrace - capture stack trace by default?
    • category - used to be path, but OpenJDK API calls this category

The following things could be part of the specification for a probe:

  • Location (ENTRY, EXIT, WRAP)
    Emits instant event at entry, at exit
    , or wraps the method body with a timed event. May also want a BOTH (instant event both at entry and exit). 
    Default should be WRAP. 

Things to remove from the current prototype:

  • reuse (use case is simply not there in JDK 11+)
  • loggingtype (text logging should be killed)
  • Kind (INSTANT, DURATION, TIMED) - Rather OracleJDK specific - skip this
  • thread - should the event record thread data - This can be skipped and assumed to always be true for the Oracle JDK
  • path → Should be switched to Category

Open questions:

  1. If we want to add fields or reference chains through fields, then we may want to add a new element "field".


Overview
Content Tools
ThemeBuilder
  • No labels
© 2025 Oracle Corporation and/or its affiliates
Terms of Use
• License: GPLv2
• Privacy • Trademarks • Contact Us

Powered by a free Atlassian Confluence Open Source Project License granted to https://www.atlassian.com/software/views/opensource-community-additional-license-offer. Evaluate Confluence today.

  • Kolekti ThemeBuilder Powered by Atlassian Confluence 8.5.21
  • Kolekti ThemeBuilder printed.by.atlassian.confluence
  • Report a bug
  • Atlassian News
Atlassian
Kolekti ThemeBuilder EngineAtlassian Confluence
{"serverDuration": 206, "requestCorrelationId": "10db6812c0f2d27e"}