Tracing¶
On the Tracing tab, you can inspect traces from a custom or external model deployment, including text generation, agentic workflow, VDB, and MCP deployments. Each trace includes a combined span list and timeline that shows the order and duration of actions carried out by the model or agent. Deployment tracing uses the same interface as application tracing.
To access tracing, select a deployment from the Deployments inventory and click the Tracing tab.
Traces represent the path taken by a request to a model or agentic workflow. DataRobot uses the OpenTelemetry framework for tracing. A trace follows the entire end-to-end path of a request, from origin to resolution. Each trace contains one or more spans, starting with the root span. The root span represents the entire path of the request and contains a child span for each individual step in the process. The root (or parent) span and each child span share the same Trace ID.
Access and retention
Tracing is available for custom applications, custom and external model deployments, and Workloads. Applications, deployments, and Workloads share the same tracing interface.
Retention is configured at the organization level by a system administrator and applies to all users in the organization. If a policy isn't set explicitly, trial organizations use a 14-day policy and paying organizations use a 30-day policy. Administrators can set retention per signal type (traces, logs, or metrics) to 14, 30, 60, 90, 180, or 360 days.
To view or change your organization's retention settings, see Configure OTel retention.
Traces appear in a list by Root span name. Each entry shows the status of the trace and the timestamp. Select a trace to open the detail pane, which shows high-level metadata for the request alongside a combined span list and timeline.
Depending on the request, the list and detail pane can include the following fields:
| Field | Description |
|---|---|
| Root span name | The name of the root span for the trace. |
| Timestamp | The date and time of the trace. |
| Status | The overall status of the trace, including all spans (for example, Success). The status is Error if any dependent task fails. |
| Trace ID | A unique identifier for the trace. |
| User ID | The user associated with the request, when available. |
| Latency | The time it took for the trace to complete. This value is equal to the duration of the root span and includes all actions represented by child spans. |
| Tokens | Token usage for the trace. |
| Spans | The number of completed spans (actions) included in the trace. |
| Errors | The number of spans in the trace that recorded an error. |
| Cost | If cost data is provided, the total cost of the trace. |
| Prompt | The user prompt related to the trace. |
| Completion | The agent or model response (completion) associated with the prompt for the trace. |
| Tools | The tool or tools called during the request represented by the trace. |
Search and filter traces¶
Use the search row above the trace list to locate traces.
| Filter | Description |
|---|---|
| Last timestamp | Limit traces by the time of the most recent activity in the trace. |
| Status | Filter traces by Success or Alert status. |
| Type | Filter traces by type, including generation type, to distinguish operational spans from generation-specific spans. |
Review spans¶
Select a trace to review its spans. The span list and timeline appear together: each row shows the span name, duration, and token usage, and a timeline chart shows when the span ran relative to the rest of the trace. Expand a parent span to show its child spans. Restricted span appears when you do not have access to the deployment or service associated with the span.
In the span view, filter spans by duration, tokens, name, or status code, or isolate identical spans.
When you select a span, high-level metadata, logs, input, output, and remaining metadata are available on the same page. Formatted text in a span appears alongside attributes. Click the span service or model name to access the deployment or resource (if you have access).
When you expand a span, logs appear with the span attributes, input, and output. The results shown are a subset of the full deployment logs.
Tracing table OTel attributes¶
For Cost, Prompt, Completion, and Tools, DataRobot reads specific span attributes across all spans that belong to the trace. Other fields (such as Timestamp, Latency, and Tokens) come from trace and span metadata rather than these attributes.
| Column | OpenTelemetry mapping |
|---|---|
| Cost | Sums numeric values from the datarobot.moderation.cost attribute on spans in the trace (when that attribute is present). |
| Prompt | Uses the gen_ai.prompt attribute. If more than one span includes gen_ai.prompt, the first value encountered in trace order is shown. |
| Completion | Uses the gen_ai.completion attribute. If more than one span includes gen_ai.completion, the last value encountered in trace order is shown. |
| Tools | Collects every distinct value of the tool_name attribute found on spans in the trace and lists those tool names in the column. |
Attribute keys must match exactly (including the underscore in gen_ai). Names such as genai.prompt or GenAI.prompt are not read for the Prompt and Completion columns.
Automatic instrumentation (including DataRobot agent templates) often sets gen_ai.prompt, gen_ai.completion, and sometimes tool_name. For custom or external models, frameworks differ: tool execution may not emit tool_name even when tools run (for example, some LangGraph callback flows). In that case Prompt and Completion can populate while Tools remains empty until tool_name is configured on a span that runs inside the tool—see Implement tracing.

