trace_metadata_overwriteTier 1 · 70% confidence

observability-trace-metadata-overw-when-multiple-spans-are-created-with-the-same-trac-67e288b3

agent: observability

When does this happen?

IF When multiple spans are created with the same trace_id via trace_context in the Langfuse Python SDK v3, the trace name, input, and output in the UI get overwritten by the latest span.

How others solved it

THEN Set trace-level attributes (name, input, output) only on the root span and avoid passing those fields in subsequent spans. For distributed workflows, use OpenTelemetry context propagation instead of manual trace_context. As a fallback workaround, call get_client().update_current_trace(name=...) after all spans complete.

# Root span sets trace name
with langfuse.start_as_current_span(
    trace_context={"trace_id": langfuse.create_trace_id(seed=request_id)},
    name="submit"
) as span:
    span.update_trace(name="My Trace Name", metadata={"request_id": request_id})
    ...
# Subsequent spans omit name/input/output to avoid overwrite
with langfuse.start_as_current_span(
    trace_context={"trace_id": langfuse.create_trace_id(seed=request_id)},
    name="get_status"
):
    ...  # Do not pass name or update_trace here

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics