Skip to content

Conversation

@fangxiu-wf
Copy link

@fangxiu-wf fangxiu-wf commented Dec 10, 2025

This PR adds instrumentation support for SOFARPC framework, including:

  • Javaagent instrumentation module
  • Library autoconfigure module
  • Testing utilities and test cases
  • Support for SOFARPC 5.4.0+

Fixes #15496

This PR adds instrumentation support for SOFARPC framework, including:
- Javaagent instrumentation module
- Library autoconfigure module
- Testing utilities and test cases
- Support for SOFARPC 5.4.0 through 5.12.0+

Fixes open-telemetry#15496
@linux-foundation-easycla
Copy link

linux-foundation-easycla bot commented Dec 10, 2025

CLA Signed

The committers listed above are authorized under a signed CLA.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds comprehensive instrumentation support for the SOFARPC framework, enabling distributed tracing for RPC calls. The implementation includes both javaagent-based auto-instrumentation and library-based manual instrumentation approaches, with full support for synchronous, asynchronous, and generic invocations.

Key changes:

  • Adds javaagent instrumentation module with automatic filter injection via SPI
  • Adds library autoconfigure module with manual instrumentation API
  • Implements comprehensive test coverage including chain tracing, error handling, async calls, and local call detection
  • Supports SOFARPC versions 5.4.0 through 5.12.0+

Reviewed changes

Copilot reviewed 36 out of 36 changed files in this pull request and generated 11 comments.

Show a summary per file
File Description
settings.gradle.kts Adds three new subprojects for SOFARPC instrumentation (javaagent, library-autoconfigure, testing)
instrumentation/sofa-rpc/metadata.yaml Defines instrumentation metadata including supported versions, semantic conventions, and configuration options
instrumentation/sofa-rpc/testing/build.gradle.kts Configures test dependencies and runtime classpath with SOFARPC 5.4.0 and compatible logging dependencies
instrumentation/sofa-rpc/testing/src/main/java/.../api/* Defines test service interfaces (HelloService, MiddleService, ErrorService) for testing RPC scenarios
instrumentation/sofa-rpc/testing/src/main/java/.../impl/* Implements test services including error handling, chaining, and timeout scenarios
instrumentation/sofa-rpc/testing/src/main/java/.../AbstractSofaRpcTest.java Provides base test class for synchronous, asynchronous, and error handling test scenarios
instrumentation/sofa-rpc/testing/src/main/java/.../AbstractSofaRpcTraceChainTest.java Tests trace propagation through chained RPC calls and local call filtering
instrumentation/sofa-rpc/library-autoconfigure/src/main/java/.../* Core library instrumentation including telemetry builder, filters, attribute extractors, and context propagation
instrumentation/sofa-rpc/library-autoconfigure/src/test/java/.../* Library instrumentation tests extending abstract test classes
instrumentation/sofa-rpc/library-autoconfigure/build.gradle.kts Configures library dependencies with SOFARPC 5.4.0 and AutoValue for code generation
instrumentation/sofa-rpc/library-autoconfigure/src/main/resources/META-INF/services/* SPI configuration for auto-registering OpenTelemetry filters with SOFARPC
instrumentation/sofa-rpc/javaagent/src/main/java/.../* Javaagent instrumentation module with resource injection and filter delegation
instrumentation/sofa-rpc/javaagent/src/testSofaRpc/java/.../* Javaagent-specific tests with peer service attribute support
instrumentation/sofa-rpc/javaagent/build.gradle.kts Configures javaagent build with muzzle checks for version 5.0.0+ and test suites
instrumentation/sofa-rpc/javaagent/src/main/resources/* SPI configuration for javaagent filter registration

fangxiu-wf and others added 3 commits December 11, 2025 17:19
This PR adds instrumentation support for SOFARPC framework, including:
- Javaagent instrumentation module
- Library autoconfigure module
- Testing utilities and test cases
- Support for SOFARPC 5.4.0 through 5.12.0+

Fixes open-telemetry#15496
…va/io/opentelemetry/instrumentation/sofarpc/v5_4/SofaRpcTelemetryBuilder.java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This PR adds instrumentation support for SOFARPC framework, including:
- Javaagent instrumentation module
- Library autoconfigure module
- Testing utilities and test cases
- Support for SOFARPC 5.4.0 through 5.12.0+

Fixes open-telemetry#15496
This PR adds instrumentation support for SOFARPC framework, including:
- Javaagent instrumentation module
- Library autoconfigure module
- Testing utilities and test cases
- Support for SOFARPC 5.4.0+

Fixes open-telemetry#15496
This PR adds instrumentation support for SOFARPC framework, including:
- Javaagent instrumentation module
- Library autoconfigure module
- Testing utilities and test cases
- Support for SOFARPC 5.4.0+

Fixes open-telemetry#15496
This PR adds instrumentation support for SOFARPC framework, including:
- Javaagent instrumentation module
- Library autoconfigure module
- Testing utilities and test cases
- Support for SOFARPC 5.4.0+

Fixes open-telemetry#15496
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.

Add support for SOFARPC framework

2 participants