Phase 2: Complete RPC tracing — interface, macros, attributes, tests#6424
Draft
pratikmankawde wants to merge 1 commit intopratik/otel-phase1c-rpc-integrationfrom
Draft
Phase 2: Complete RPC tracing — interface, macros, attributes, tests#6424pratikmankawde wants to merge 1 commit intopratik/otel-phase1c-rpc-integrationfrom
pratikmankawde wants to merge 1 commit intopratik/otel-phase1c-rpc-integrationfrom
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## pratik/otel-phase1c-rpc-integration #6424 +/- ##
=====================================================================
Coverage ? 79.8%
=====================================================================
Files ? 850
Lines ? 67903
Branches ? 7578
=====================================================================
Hits ? 54154
Misses ? 13749
Partials ? 0
🚀 New features to boost your workflow:
|
This was referenced Feb 26, 2026
This was referenced Feb 26, 2026
a961388 to
ff3a7a0
Compare
ce08aa6 to
a288887
Compare
ff3a7a0 to
1bfdf71
Compare
a288887 to
761af61
Compare
1bfdf71 to
b5fb71c
Compare
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
761af61 to
051a219
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
High Level Overview of Change
Complete the RPC tracing instrumentation started in the POC phase. Adds the missing
shouldTraceLedger()method to the Telemetry interface, introducesXRPL_TRACE_PEERandXRPL_TRACE_LEDGERmacros, enhances RPCHandler with duration and error span attributes, and adds a unit test for telemetry config parsing.Context of Change
Phase 2 of the OpenTelemetry distributed tracing project. The POC (Phase 1) established the core infrastructure — build system integration, Telemetry interface, NullTelemetry stub, SpanGuard RAII, and basic RPC tracing macros. This phase fills in the gaps: the
shouldTraceLedger()method was declared inSetupbut missing from the virtual interface, and the trace macros for peer and ledger domains were not yet implemented. The RPCHandler span was also missingduration_msanderror_messageattributes needed for RED metrics.Design doc:
OpenTelemetryPlan/directory in this repo.Type of Change
API Impact
libxrplchange (any change that may affectlibxrplor dependents oflibxrpl)Test Plan
TelemetryConfig_testcovers: Setup struct defaults, empty section parsing, fully populated section parsing, and NullTelemetry factory (start/stop no-ops, allshould*return false).telemetry=ONand verify xrpld links.Future Tasks