Skip to main content

Unified trace table schema reference

The unified trace table follows the OpenTelemetry span data model. Each row is one span. The table is clustered by time.

Column

Description

Type

record_id

Unique identifier for this table row.

STRING

time

Timestamp when the span was recorded.

TIMESTAMP

date

UTC date when the span was recorded. Useful for partition pruning.

DATE

service_name

Name of the Unity AI Gateway service (endpoint name).

STRING

service_id

Identifier for the service named in service_name.

STRING

trace_id

Identifier shared by all spans in a single request tree. Filter on this to reconstruct a full trace.

STRING

span_id

Unique identifier for this span.

STRING

trace_state

OpenTelemetry tracestate header value, if present.

STRING

parent_span_id

span_id of the parent span. NULL for root spans (one per request).

STRING

flags

OpenTelemetry trace flags bitmask.

INT

name

Human-readable span name, for example my-endpoint-mlflow/v1/chat/completions.

STRING

kind

Span kind: SPAN_KIND_SERVER (root, one per request) or SPAN_KIND_CLIENT (downstream call).

STRING

start_time_unix_nano

Span start time in nanoseconds since Unix epoch.

BIGINT

end_time_unix_nano

Span end time in nanoseconds since Unix epoch.

BIGINT

attributes

Span attributes as a VARIANT object. Key names contain dots; use backtick syntax to access them: attributes:\enduser.id``. See Key attributes below.

VARIANT

dropped_attributes_count

Number of attributes dropped due to limits.

INT

events

Array of timed events within the span. The primary event type is policy_evaluated, which records per-policy evaluation detail. See Policy evaluation events.

ARRAY<STRUCT>

dropped_events_count

Number of events dropped due to limits.

INT

links

Array of links to other spans or traces.

ARRAY<STRUCT>

dropped_links_count

Number of links dropped due to limits.

INT

status

Span status with code (STATUS_CODE_OK or STATUS_CODE_ERROR) and optional message.

STRUCT

resource

Resource attributes describing the instrumented entity, for example service.name and SDK metadata.

STRUCT

resource_schema_url

Schema URL for the resource semantic conventions.

STRING

instrumentation_scope

Name and version of the instrumentation library that produced the span.

STRUCT

span_schema_url

Schema URL for the span semantic conventions.

STRING

Column

Description

Type

record_id

Unique identifier for this table row.

STRING

time

Timestamp when the span was recorded.

TIMESTAMP

date

UTC date when the span was recorded. Useful for partition pruning.

DATE

service_name

Name of the Unity AI Gateway service (endpoint name).

STRING

service_id

Identifier for the service named in service_name.

STRING

trace_id

Identifier shared by all spans in a single request tree. Filter on this to reconstruct a full trace.

STRING

span_id

Unique identifier for this span.

STRING

trace_state

OpenTelemetry tracestate header value, if present.

STRING

parent_span_id

span_id of the parent span. NULL for root spans (one per request).

STRING

flags

OpenTelemetry trace flags bitmask.

INT

name

Human-readable span name, for example my-endpoint-mlflow/v1/chat/completions.

STRING

kind

Span kind: SPAN_KIND_SERVER (root, one per request) or SPAN_KIND_CLIENT (downstream call).

STRING

start_time_unix_nano

Span start time in nanoseconds since Unix epoch.

BIGINT

end_time_unix_nano

Span end time in nanoseconds since Unix epoch.

BIGINT

attributes

Span attributes as a VARIANT object. Key names contain dots; use backtick syntax to access them: attributes:\enduser.id``. See Key attributes below.

VARIANT

dropped_attributes_count

Number of attributes dropped due to limits.

INT

events

Array of timed events within the span. The primary event type is policy_evaluated, which records per-policy evaluation detail. See Policy evaluation events.

ARRAY<STRUCT>

dropped_events_count

Number of events dropped due to limits.

INT

links

Array of links to other spans or traces.

ARRAY<STRUCT>

dropped_links_count

Number of links dropped due to limits.

INT

status

Span status with code (STATUS_CODE_OK or STATUS_CODE_ERROR) and optional message.

STRUCT

resource

Resource attributes describing the instrumented entity, for example service.name and SDK metadata.

STRUCT

resource_schema_url

Schema URL for the resource semantic conventions.

STRING

instrumentation_scope

Name and version of the instrumentation library that produced the span.

STRUCT

span_schema_url

Schema URL for the span semantic conventions.

STRING

The table also carries columns needed for its physical optimization, notably clustering, that are not useful for queries. These columns are named with an _ prefix. Treat them as implementation details that may change in future versions.

Key attributes

The attributes column is a VARIANT. Access fields using backtick syntax for keys that contain dots: attributes:\gen_ai.request.model``. The keys present depend on whether the span is a model service (LLM) call or an MCP service call.

Model service (LLM) spans:

Attribute

Description

databricks.api_type

Inbound API type, for example openai/v1/responses.

enduser.id

User or service principal that made the request.

databricks.requester_type

Requester type, for example USER.

databricks.request_id

Databricks-generated request ID.

databricks.url

Full request URL.

databricks.latency_ms

End-to-end request latency in milliseconds.

databricks.time_to_first_byte_ms

Time to first byte in milliseconds.

databricks.action

Attempt type, for example initial_attempt or retry.

databricks.destination_id

Target model, for example databricks-claude-sonnet-4-6.

databricks.outcome

success or failure.

gen_ai.operation.name

Operation, for example chat.

gen_ai.request.model

Requested model.

gen_ai.provider.name

Provider, for example databricks.

gen_ai.usage.input_tokens

Input tokens consumed.

gen_ai.usage.output_tokens

Output tokens generated.

http.response.status_code

HTTP status code.

error.type

Error type on failures, for example invalid_request.

mlflow.chat.tokenUsage

Detailed token usage as a JSON string.

mlflow.spanInputs

Serialized request payload.

mlflow.spanOutputs

Serialized response payload (empty on failure).

Attribute

Description

databricks.api_type

Inbound API type, for example openai/v1/responses.

enduser.id

User or service principal that made the request.

databricks.requester_type

Requester type, for example USER.

databricks.request_id

Databricks-generated request ID.

databricks.url

Full request URL.

databricks.latency_ms

End-to-end request latency in milliseconds.

databricks.time_to_first_byte_ms

Time to first byte in milliseconds.

databricks.action

Attempt type, for example initial_attempt or retry.

databricks.destination_id

Target model, for example databricks-claude-sonnet-4-6.

databricks.outcome

success or failure.

gen_ai.operation.name

Operation, for example chat.

gen_ai.request.model

Requested model.

gen_ai.provider.name

Provider, for example databricks.

gen_ai.usage.input_tokens

Input tokens consumed.

gen_ai.usage.output_tokens

Output tokens generated.

http.response.status_code

HTTP status code.

error.type

Error type on failures, for example invalid_request.

mlflow.chat.tokenUsage

Detailed token usage as a JSON string.

mlflow.spanInputs

Serialized request payload.

mlflow.spanOutputs

Serialized response payload (empty on failure).

MCP service spans:

Attribute

Description

mcp.method.name

MCP method, for example tools/list or tools/call.

gen_ai.operation.name

Operation, for example execute_tool for tools/call.

gen_ai.tool.name

Name of the tool being invoked, for example atlassianUserInfo.

gen_ai.tool.call.arguments

Extracted tool arguments, as a JSON string.

gen_ai.tool.call.result

Extracted tool result, as a JSON string.

databricks.requester_type

Requester type, for example USER.

databricks.request_id

Databricks-generated request ID.

databricks.tool.connection_type

MCP connection type, for example EXTERNAL_MCP.

tool_source

Backing connection or managed MCP server name, for example main.default.gh-conn (external) or code_interpreter (managed). The MCP service name is in the service_name column.

tool_type

Tool type, for example external_connection.

workspace_id

Workspace ID.

enduser.id

User or service principal that made the request.

http.response.status_code

HTTP status from the MCP call.

rpc.response.status_code

JSON-RPC status code, for example -32003. The primary MCP failure signal.

error.type

Failure classification, for example policy_deny, upstream_error, or internal_error.

mlflow.spanType

Span type. TOOL for MCP spans. Useful for WHERE filtering.

mlflow.spanInputs

Serialized JSON-RPC request.

mlflow.spanOutputs

Serialized MCP/JSON-RPC response.

Attribute

Description

mcp.method.name

MCP method, for example tools/list or tools/call.

gen_ai.operation.name

Operation, for example execute_tool for tools/call.

gen_ai.tool.name

Name of the tool being invoked, for example atlassianUserInfo.

gen_ai.tool.call.arguments

Extracted tool arguments, as a JSON string.

gen_ai.tool.call.result

Extracted tool result, as a JSON string.

databricks.requester_type

Requester type, for example USER.

databricks.request_id

Databricks-generated request ID.

databricks.tool.connection_type

MCP connection type, for example EXTERNAL_MCP.

tool_source

Backing connection or managed MCP server name, for example main.default.gh-conn (external) or code_interpreter (managed). The MCP service name is in the service_name column.

tool_type

Tool type, for example external_connection.

workspace_id

Workspace ID.

enduser.id

User or service principal that made the request.

http.response.status_code

HTTP status from the MCP call.

rpc.response.status_code

JSON-RPC status code, for example -32003. The primary MCP failure signal.

error.type

Failure classification, for example policy_deny, upstream_error, or internal_error.

mlflow.spanType

Span type. TOOL for MCP spans. Useful for WHERE filtering.

mlflow.spanInputs

Serialized JSON-RPC request.

mlflow.spanOutputs

Serialized MCP/JSON-RPC response.

Policy enforcement attributes (model service and MCP service spans):

When a policy blocks a request, the server span (the root span) sets the following scalar attributes. Because they are set only when a policy short-circuits the request, they also serve as a quick filter for "did any policy block this request?"

Attribute

Description

databricks.policy.name

The policy that blocked the request. The Unity Catalog function FQN for a custom policy, or the attachment label for a built-in policy. <unknown> if the policy is unnamed.

databricks.policy.action

Enforced action, either DENY or ASK.

Attribute

Description

databricks.policy.name

The policy that blocked the request. The Unity Catalog function FQN for a custom policy, or the attachment label for a built-in policy. <unknown> if the policy is unnamed.

databricks.policy.action

Enforced action, either DENY or ASK.

Policy evaluation events

The events column holds an array of policy_evaluated events, one per evaluated (policy, phase) pair. This is where per-policy detail lives, beyond the scalar databricks.policy.* attributes on the server span. Each event carries the following keys:

Key

Description

policy.name

Name of the evaluated policy.

policy.type

Policy type, either CUSTOM or BUILTIN.

policy.handler

Handler for the policy. Built-in policies only.

policy.options

Handler options. Built-in policies only.

policy.action

Evaluated action, one of ALLOW, DENY, or ASK.

policy.phase

Evaluation phase, either on_call or on_result. Custom policies only.

Key

Description

policy.name

Name of the evaluated policy.

policy.type

Policy type, either CUSTOM or BUILTIN.

policy.handler

Handler for the policy. Built-in policies only.

policy.options

Handler options. Built-in policies only.

policy.action

Evaluated action, one of ALLOW, DENY, or ASK.

policy.phase

Evaluation phase, either on_call or on_result. Custom policies only.

When a policy runs in dry-run (monitor or shadow) mode with dry_run=true, the enforced action is downgraded to ALLOW so the request proceeds, and the would-be verdict is recorded on the same event:

Key

Description

policy.dry_run_action

The action that would have been enforced, for example DENY. Its presence signals the policy ran in dry-run mode.

policy.dry_run_reason

Reason for the would-be action.

policy.dry_run_transformed_message

The payload a would-be transform or mask policy would have written.

Key

Description

policy.dry_run_action

The action that would have been enforced, for example DENY. Its presence signals the policy ran in dry-run mode.

policy.dry_run_reason

Reason for the would-be action.

policy.dry_run_transformed_message

The payload a would-be transform or mask policy would have written.