inference/research
verifiedhigh · 0.92updated 2026-10-05

Dynamo lib/backend-common/src/telemetry.rs - dynamic-name OTel spans under the engine.generate parent

repo

Fields

id
sources/w5e-dynamo-backend-common-telemetry
Publisher
NVIDIA
Kind
repo
Accessed
2026-10-05
notes
Read at main 2026-10-05. 91 lines, module doc 'Helpers for engine-author observability'. The convention is explicit in the doc comment: use tracing::info_span! for static span names (nests under the framework's engine.generate parent via the runtime's .instrument chain) and start_span() for dynamic names, which goes through OTel directly because tracing requires compile-time names while still inheriting the bridged parent context. start_span returns a NO-OP SpanGuard when no valid parent span context exists (bridge layer not installed), so span calls never panic and never emit an orphan root - confirmed by the test start_span_is_noop_without_bridge. Both paths land in the same OTel tree.

Notes

Read at main 2026-10-05. 91 lines, module doc 'Helpers for engine-author observability'. The convention is explicit in the doc comment: use tracing::info_span! for static span names (nests under the framework's engine.generate parent via the runtime's .instrument chain) and start_span() for dynamic names, which goes through OTel directly because tracing requires compile-time names while still inheriting the bridged parent context. start_span returns a NO-OP SpanGuard when no valid parent span context exists (bridge layer not installed), so span calls never panic and never emit an orphan root - confirmed by the test start_span_is_noop_without_bridge. Both paths land in the same OTel tree.

Cross-references

This record references no other records.