telemetry: add OTLP traces pipeline#178
Open
samcm wants to merge 2 commits into
Open
Conversation
Ports the traces pipeline from ethpandaops/blob-devnets (devnet-0): Vector gains an otlp_in source (gRPC :4317, HTTP :4318) with use_otlp_decoding, plus an otlp_traces sink forwarding span batches to the prod analytics OTLP gateway. geth exports RPC spans via --rpc.telemetry, lighthouse via --telemetry-collector-url. Vector joins the shared docker network so clients can reach it by name.
🤖 qu0b-reviewerSummaryThis PR adds an OTLP traces pipeline to the devnet infrastructure: a Vector Issues
Suggestions
Reviewed @ |
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.
Upstreams blob-devnets' traces pipeline so devnets stamped from the template get traces out of the box: Vector gains an
otlp_insource (gRPC :4317, HTTP :4318) and anotlp_tracessink to the prod analytics OTLP gateway, geth exports RPC spans via--rpc.telemetry, and lighthouse via--telemetry-collector-url. No new sops keys needed — the traces sink reusessecret_loki.passwordalready present for the logs sink. The bootnode CL here is teku, which has no equivalent telemetry flag, so only its geth is wired up.The second commit wires three more clients: reth via
--tracing-otlp(HTTP :4318;filter=infobecause the defaultdebugproduced ~50GB of spans during a sync, reth #21608;OTEL_RESOURCE_ATTRIBUTEScarries the instance id since reth hardcodesservice.name=reth), prysm via--enable-tracing(HTTP :4318 only — the endpoint must be set explicitly since the flag default is a stale Jaeger URL; sample fraction raised from the 0.20 default to 1.0), and grandine via--telemetry-metrics-url(gRPC :4317 only — despite the name it exports tracing spans, grandine #487).Support matrix
Version floors: reth ≥1.9.0 (
--tracing-otlp.sample-ratio≥1.10.0), prysm ≥5.3.1, grandine ≥2.0.2. This inventory pins reth/prysm to upstream:latestand grandine toethpandaops/grandine:develop, all comfortably past the floors; an unknown flag fails loudly at container start either way.