feat(dev): collect local OTEL traces in project dev - #1980
Open
tejaskash wants to merge 7 commits into
Open
Conversation
Adds an in-process OTLP/HTTP collector (protobuf + JSON ingest, JSONL persistence per trace) started by the dev handler unless --no-traces or instrumentation.enableOtel is false. Spawned agents receive OTEL env pointing at the collector; container runtimes get a host.docker.internal endpoint, and Python CodeZip agents get sitecustomize-based auto-instrumentation so uvicorn --reload workers stay traced.
tejaskash
had a problem deploying
to
e2e-testing
August 12, 2026 14:44 — with
GitHub Actions
Failure
tejaskash
had a problem deploying
to
e2e-testing
August 12, 2026 14:47 — with
GitHub Actions
Failure
tejaskash
force-pushed
the
feat/project-dev-handler
branch
2 times, most recently
from
August 13, 2026 17:41
37312c9 to
73ab887
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.
Summary
agentcore project dev: acceptsPOST /v1/tracesandPOST /v1/logs(protobuf via pinned@opentelemetry/otlp-transformer@0.213.0generated decoders, or JSON), persisting raw payloads as per-trace JSON Lines underagentcore/.cli/traces/otlp/io/httpServer.ts(loopbacknode:httpprimitive),core/dev/otel/store.ts(persistence + list/get queries),core/dev/otel/transforms.ts(pure OTLP flattening/noise filtering),core/dev/otel/collector.ts(routing + decode)instrumentation.enableOtel ?? trueand a new--no-tracesflag; spawned agents receiveOTEL_EXPORTER_OTLP_ENDPOINT+OTEL_SERVICE_NAMEenv, with the endpoint rewritten tohost.docker.internalfor Container runtimesPYTHONPATH(anopentelemetry-instrumentwrapper would leaveuvicorn --reloadworker respawns untraced); a status line warns whenopentelemetry-distrois absent--no-<name>negationsStack
feat/project-dev-handler(feat(project): wire dev handler #1966); retarget torefactorafter it mergesVerification
bun test(1202 pass)bun run typecheck,bun run lint:check,bun run format:checkbun run build+ smoke:node dist/index.js project dev --helpshows--no-tracesbunsource, the Node bundle, and a compiled binary (the pinned generated root survives all three)Note: running
bun testafterbun run buildpicks updist/assets/cdk/test/cdk.test.ts(pre-existing; unrelated to this change).