feat: implement distributed tracing with OpenTelemetry and trace context propagation (closes #108)#210
Merged
elizabetheonoja-art merged 1 commit intoJul 24, 2026
Conversation
…ext propagation (closes Utility-Protocol#108) - Add OTLP gRPC batch exporter with head-based error-aware sampling (1% success, 100% error) and 5s batch interval - Add init_tracing_otel_bridge() to wire tracing spans into OpenTelemetry - Add init_propagators_only() for test-safe W3C context propagation - Create db_tracing module with QuerySpanGuard and trace_query() - Create kafka_propagator module for W3C traceparent injection in Kafka message headers - Add #[tracing::instrument] spans to key handlers: submit_reading, settle_account, register_meter, get_diagnostics, calibrate_meter - Add tracing spans to Soroban RPC call_rpc and settlement executor - Wire OpenTelemetry initialization into main.rs startup - Add integration tests for OTLP pipeline, W3C propagation, Kafka headers, sampling, and DB tracing guards - Add tonic/grpc-tonic features to opentelemetry-otlp dependency
elizabetheonoja-art
merged commit Jul 24, 2026
2ec5f4a
into
Utility-Protocol:main
2 of 4 checks passed
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.
Summary
Implements distributed tracing with OpenTelemetry SDK across all services as described in #108.
Changes
Technical Invariants Met
Closes #108