async_generator_handlingTier 1 · 70% confidence
observability-async-generator-hand-when-using-the-observe-decorator-on-a-function-tha-98fbec2c
agent: observability
When does this happen?
IF When using the @observe decorator on a function that returns an async generator, the trace output shows '<async_generator>' instead of the yielded values.
How others solved it
THEN Patch the decorator to detect async generators via inspect.isasyncgen() and iterate over them with 'async for' to capture each yielded item, similar to the existing handling of sync generators with inspect.isgenerator(). In the async branch, if the result is an async generator, wrap it with a helper that updates the observation after each yield.
# Inside the observe decorator, after detecting async function:
if inspect.isasyncgen(result):
async for item in result:
# Update observation with item
await langfuse_span_or_generation.update(output=item)
yield item
else:
# Handle normal async returnRelated patterns
otel_regression_span_processor
observability-otel-regression-span-using-phoenix-otel-register-with-auto-instrument-t-a6b71580
Tier 1 · 70%
tracing_disablingobservability-tracing-disabling-tracing-prompts-repeatedly-appear-during-crew-exec-15ec9c27
Tier 1 · 70%
async_generator_outputobservability-async-generator-outp-when-using-observe-on-an-async-generator-function--b87414ca
Tier 1 · 70%
trace_name_overwriteobservability-trace-name-overwrite-when-using-start-as-current-span-with-trace-contex-d131777c
Tier 1 · 70%
version_upgrade_bugobservability-version-upgrade-bug-using-arize-phoenix-otel-version-0-10-0-with-regis-794aa48f
Tier 1 · 70%
streaming_cost_trackingobservability-streaming-cost-track-streaming-api-calls-via-litellm-proxy-missing-cost-db149eb2
Tier 1 · 70%
Have you seen this in your site?
Connect AgentMinds to match against your tech stack automatically.