Skip to content

Document Opentelemetry dependencies - #1240

Open
pjfanning wants to merge 2 commits into
mainfrom
pjfanning-patch-1
Open

Document Opentelemetry dependencies#1240
pjfanning wants to merge 2 commits into
mainfrom
pjfanning-patch-1

Conversation

@pjfanning

@pjfanning pjfanning commented Aug 26, 2026

Copy link
Copy Markdown
Member

Added note about Opentelemetry Java Instrumentation dependency in startPoolInterface method and elsewhere.

part of #1241

Added note about Opentelemetry Java Instrumentation dependency in startPoolInterface method.
@pjfanning pjfanning changed the title Document Opentelemetry dependency in startPoolInterface Document Opentelemetry dependencies Aug 26, 2026
pjfanning added a commit to apache/pekko that referenced this pull request Aug 28, 2026
…ents (#3473)

Motivation:
The OpenTelemetry Java agent propagates trace context through pekko actors,
streams and remoting by attaching bytecode advice to specific internal methods.
Its muzzle checks verify the classes the advice code calls, not the method
matchers, so renaming, inlining or restructuring a matched method silently stops
context propagation with no error and no log.

Modification:
Document the matched methods where they are declared, naming the agent, saying
what it uses the method for and linking to the instrumentation source. Mark them
`@noinline` so the compiler cannot inline them out of the bytecode. List the
RemoteInstrument identifiers known to be taken by other projects so that the next
implementer can pick a free one. No API changes.

Result:
The load-bearing internal APIs are recorded next to the code, and new
InstrumentationPointsSpec suites fail loudly if a matched name, arity or
parameter type disappears from the bytecode.

Tests:
- sbt "actor-tests/testOnly org.apache.pekko.dispatch.InstrumentationPointsSpec" - 6 passed
- sbt "stream-tests/testOnly org.apache.pekko.stream.impl.fusing.InstrumentationPointsSpec" - 1 passed
- sbt "remote/testOnly org.apache.pekko.remote.InstrumentationPointsSpec" - 10 passed
- sbt actor/mimaReportBinaryIssues stream/mimaReportBinaryIssues remote/mimaReportBinaryIssues - clean
- sbt scalafmtCheckAll scalafmtSbtCheck - pass
- sbt headerCreateAll - headers added for the three new files

References:
Fixes #3472, Refs apache/pekko-http#1240,
Refs open-telemetry/opentelemetry-java-instrumentation#19823
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.

1 participant