Skip to content

Add experimental Java profiling instrumentation#75

Merged
lrwh merged 12 commits into
mainfrom
feat/java-profiling-datakit
Apr 9, 2026
Merged

Add experimental Java profiling instrumentation#75
lrwh merged 12 commits into
mainfrom
feat/java-profiling-datakit

Conversation

@lrwh
Copy link
Copy Markdown
Collaborator

@lrwh lrwh commented Apr 9, 2026

Summary

This change adds an experimental Java profiling instrumentation for the javaagent.

Included

  • add instrumentation/profiling/library
  • add instrumentation/profiling/javaagent
  • start continuous JFR-based profiling on Java 17+ JVMs
  • export JFR snapshots through pluggable adapters
  • add Datakit profile exporter using multipart/form-data
  • add file exporter for validation/debugging
  • support otel.profiling.* config and legacy compatibility aliases
  • support memory profiling overlay options
  • add library tests, Java 17 JFR tests, file exporter agent test, and Datakit exporter agent test

Notes

  • profiling currently requires Java 17+ with JFR available
  • JDK 8 runtime does not support this profiling implementation
  • trace export code path is not changed in this PR

@lrwh lrwh merged commit 66df8fd into main Apr 9, 2026
77 of 92 checks passed
@CLAassistant
Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


liurui seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants