open-telemetry / open-telemetry/opentelemetry-python-genai
opentelemetry-instrumentation-genai-agno gaps vs openinference instrumentation
Open
Nobody has claimed this yet.
openinference-migration
- Dominant language
- Python
- Stars
- 39
- Forks
- 63
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 175
Description
Ready to Fix
Missing Spans
None
Missing Attributes & Features
- Support streaming responses on
invoke_agentandinvoke_workflow(Agent.run(stream=True),Agent.arun(stream=True),Team.run(stream=True),Team.arun(stream=True),Workflow.run(stream=True),Workflow.arun(stream=True)) (OpenInference:run_stream/arun_stream, semconv:gen_ai.output.messages) (#556) - Record error status on tool execution failure on
execute_tool(FunctionCall.execute,FunctionCall.aexecute) (OpenInference:function_call.error, semconv:error.type) (#557) - Support streaming tool results on
execute_tool(FunctionCall.execute,FunctionCall.aexecute) (OpenInference:_handle_success_streaming, semconv:gen_ai.tool.call.result) (#558) - Capture conversation ID from request arguments or instance on
invoke_agentandinvoke_workflow(OpenInference:session_id, semconv:gen_ai.conversation.id) (#559)
Blocked on Semantic Conventions
Missing Spans
- Add
Step.executeandStep.aexecutespans (agno.workflow.step.Step.execute,agno.workflow.step.Step.aexecute) (https://github.com/open-telemetry/semantic-conventions-genai/issues/188) - Add
Parallel.executeandParallel.aexecutespans (agno.workflow.parallel.Parallel.execute,agno.workflow.parallel.Parallel.aexecute)
Missing Attributes & Features
- Capture in-memory agent instance ID on
invoke_agent(OpenInference:agno.agent.id) - Capture user ID on
invoke_agentandinvoke_workflow(OpenInference:user.id) - Capture metadata on
invoke_agentandinvoke_workflow(OpenInference:metadata) - Capture knowledge base class on
invoke_agent(OpenInference:agno.knowledge) - Capture run ID on
invoke_agentandinvoke_workflow(OpenInference:agno.run.id) - Capture workflow step count, names, and types on
invoke_workflow(OpenInference:agno.workflow.steps_count,agno.workflow.steps,agno.workflow.step_types) - Capture workflow description on
invoke_workflow(OpenInference:agno.workflow.description) - Capture workflow ID on
invoke_workflow(OpenInference:agno.workflow.id) - Capture parallel step count on
Parallel.execute(OpenInference:agno.parallel.step_count)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the Ready to Fix items and the listed entry points: Agent.run/arun, Team.run/arun, Workflow.run/arun, and FunctionCall.execute/aexecute. Review issues #556-#559 and the OpenInference mappings before choosing one gap. Done means the selected streaming, error-status, conversation-ID, or tool-result behavior is instrumented according to the referenced semantic conventions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- observability
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100