Last updated: July 5, 2026
Span Attributes
Span attributes are metadata tags on individual spans. These are the raw key-value pairs your coding agents emit and Dash0 reads. Use them to filter sessions (for example, dash0.gen_ai.vcs.repository.name="my-repo") and group metrics (for example, sum by (user_name)).
For the aggregated time-series metrics Dash0 derives from these spans, see Derived Metrics.
Standard OpenTelemetry Attributes
These follow the OpenTelemetry semantic conventions for generative AI systems. They describe the session, model, tool usage, and token consumption.
| Attribute | Description |
|---|---|
gen_ai.agent.name | Agent name. Defaults to claude-code for the Claude Code plugin. |
gen_ai.conversation.id | Session identifier that groups all spans from a single session. |
gen_ai.conversation.name | Session title, user-set or auto-generated. |
gen_ai.harness.name | Coding agent platform. Always claude-code for this plugin. |
gen_ai.provider.name | Model provider, for example anthropic. |
gen_ai.request.model | Model used, for example claude-opus-4-8. |
gen_ai.tool.name | Tool name, for example Bash, Read, or mcp__server__tool. |
gen_ai.usage.cache_creation.input_tokens | Input tokens spent populating the prompt cache. |
gen_ai.usage.cache_read.input_tokens | Input tokens served from the prompt cache. |
gen_ai.usage.input_tokens | Input tokens for a model invocation. |
gen_ai.usage.output_tokens | Output tokens for a model invocation. |
VCS Context Attributes
These Dash0-specific attributes capture version control context. The Dash0 plugin auto-extracts repository, branch, commit, and pull request information from the session environment and tool responses.
| Attribute | Description |
|---|---|
dash0.gen_ai.vcs.commit.sha | Commit SHA, auto-extracted from git commit output. |
dash0.gen_ai.vcs.issue.url | Issue URL, auto-extracted from tool responses. |
dash0.gen_ai.vcs.owner.name | Repository owner (organization or user). |
dash0.gen_ai.vcs.provider.name | VCS provider, for example github or gitlab. |
dash0.gen_ai.vcs.pull_request.url | Pull request or merge request URL, auto-extracted from tool responses. |
dash0.gen_ai.vcs.ref.head.name | Branch name. |
dash0.gen_ai.vcs.repository.name | Repository name. |
dash0.gen_ai.vcs.repository.url.full | Full repository URL. |
Tool Detail Attributes
These Dash0-specific attributes provide deeper insight into tool usage patterns. The plugin parses tool names and arguments to extract structured information.
| Attribute | Description |
|---|---|
dash0.gen_ai.tool.bash.command_family | Leading binary from Bash commands, for example git or npm. |
dash0.gen_ai.tool.mcp_server | MCP server name, parsed from tool name. |
dash0.gen_ai.tool.skill.name | Skill name from Skill tool invocations. |
User Attributes
These follow the OpenTelemetry semantic conventions for user identity. Both attributes are anonymized when omit_user_info is enabled in the plugin configuration.
| Attribute | Description |
|---|---|
user.email | Developer email. Anonymized when omit_user_info is enabled. |
user.name | Developer identity. Anonymized when omit_user_info is enabled. |
Using Attributes in PromQL
In PromQL, attribute names appear with dots replaced by underscores, for example dash0_gen_ai_vcs_repository_name, user_name, or gen_ai_request_model. Use them to filter sessions (for example, dash0.gen_ai.vcs.repository.name="my-repo") or group metrics (for example, sum by (user_name)).
Further Reading
- Derived Metrics: Time-series metrics Dash0 derives from these span attributes.
- Key Concepts: The data model and terminology behind AI Coding Insights.
- Track Cost: See spend by model, team, and user.
- Explore Sessions: Drill into individual sessions with detailed attributes.