Skip to content
Apixo
Blog
news· 3 min read· via Towards AI

OpenTelemetry Moves GenAI Tracing to Dedicated Fast-Moving Repository

OpenTelemetry release v1.42.0 relocates GenAI semantic conventions to a dedicated repository, introducing updated span structures and attribute names for tracing AI agents.

OpenTelemetry Moves GenAI Tracing to Dedicated Fast-Moving Repository

On June 12, 2026, OpenTelemetry released version 1.42.0 of its semantic conventions, marking a structural change for generative AI observability. The project officially deprecated and removed all gen_ai.* attributes, metrics, spans, and events from its primary repository. Instead of adhering to the standard release cycle alongside database and HTTP conventions, GenAI specifications have been migrated to a dedicated repository named semantic-conventions-genai. Links to previous documentation under paths like model/gen-ai/, model/openai/, and model/mcp/ now redirect to notices indicating those pages are no longer maintained.

Understanding the new GenAI span hierarchy

The relocation of these specifications addresses the rapid pace of model releases, new token accounting methods, and expanding agent orchestration patterns. In the updated standard, an agent execution turn is represented as a structured tree of spans. At the root of an execution sits an invoke_agent span. This span is designated as CLIENT when an agent invokes another agent across process boundaries, or INTERNAL when tracking an agent's internal reasoning loop. When an agent has a designated name, the span takes the form invoke_agent {gen_ai.agent.name}.

Beneath the top-level agent span, individual model calls are captured as child spans using the format {gen_ai.operation.name} {gen_ai.request.model}, resulting in span names such as chat gpt-4 or chat claude-opus-5-5. When a model triggers external tools, an execute_tool span is generated beneath the model call, populated with tool names and unique call IDs to match executions back to specific tool-use blocks.

The specification also updates several essential attribute names. The gen_ai.operation.name field (with values such as chat, embeddings, execute_tool, or invoke_agent) remains required alongside gen_ai.provider.name (such as openai or anthropic). The attribute gen_ai.provider.name replaces the former gen_ai.system attribute. Furthermore, token usage fields gen_ai.usage.prompt_tokens and gen_ai.usage.completion_tokens have been replaced by gen_ai.usage.input_tokens and gen_ai.usage.output_tokens. To prevent unintended transmission of sensitive data, raw prompt and response payloads under gen_ai.input.messages and gen_ai.output.messages remain strictly opt-in.

All metrics, spans, and attributes contained within the new GenAI repository carry a stability rating of "Development." This represents the lowest maturity tier within OpenTelemetry, meaning that attribute names, required parameters, and span relationships are subject to change without backward-compatibility guarantees. Only core network and server attributes reused from standard OpenTelemetry conventions, such as error.type, server.address, and server.port, carry a "Stable" classification.

As of writing, the semantic-conventions-genai repository has not published tagged releases, instead serving directly from its main branch under a schema labeled gen-ai/1.42.0. Notably, Model Context Protocol (MCP) conventions have also been incorporated into this shared repository. As a result, tool execution spans for MCP servers now utilize the exact same gen_ai.* attribute vocabulary as standard model invocations.

What it means for developers

For engineering teams building multi-provider applications or complex agent workflows, adopting the new OpenTelemetry conventions offers a unified telemetry structure across vendors. When integrating multiple LLM providers—where developers can try top AI models cheaply through one API at https://apixoai.online—having standardized attributes like gen_ai.operation.name and gen_ai.provider.name allows telemetry backends to parse metrics seamlessly regardless of the underlying model SDK.

However, the transition requires active maintenance of existing observability pipelines. Dashboards and alerting rules relying on deprecated field names such as gen_ai.system or gen_ai.usage.prompt_tokens will fail to extract data from instrumentation libraries updated to schema gen-ai/1.42.0. Engineering teams should review their trace queries to ensure attribute names align with the v1.42.0 specification.

Because the GenAI specification is housed in a fast-churning repository without tagged releases, teams should pin their instrumentation dependencies by explicit commit hashes or exported schema URLs rather than expecting traditional version numbers. Additionally, because MCP tool-call spans now share the gen_ai.* standard, adopting the specification for LLM calls means tool execution tracing will follow the same evolving rules. Structuring parent-child spans around invoke_agent and execute_tool provides immediate visual clarity for diagnosing agent cost and latency issues, even as individual attribute names continue to mature.


Source: Tracing AI Agents: What OTel’s GenAI Spans Actually Capture — Towards AI. Written by the Apixo team from that report.

#ai-news#opentelemetry#ai-agents#observability#llm#tracing
Try it with your own tools

One key for Claude, GPT, GLM, DeepSeek and more. Pay per token with crypto.

Get your API key

Keep reading