Aller au contenu principal

Référence du schéma de table de trace unifié

La table de trace unifiée suit le modèle de données de span OpenTelemetry. Chaque ligne correspond à un span. La table est regroupée par time.

Colonne

Description

Type

record_id

Identifiant unique pour cette ligne de table.

CHAÎNE

time

Timestamp auquel le span a été enregistré.

Horodatage

date

Date UTC à laquelle la portée a été enregistrée. Utile pour l’élagage des partitions.

Date

service_name

Nom du service Unity AI Gateway (nom de l’endpoint).

CHAÎNE

service_id

Identifiant pour le service nommé dans service_name.

CHAÎNE

trace_id

Identifiant partagé par toutes les étendues dans une arborescence de requête unique. Appliquez ce filtre pour reconstruire une trace complète.

CHAÎNE

span_id

Identifiant unique pour ce span.

CHAÎNE

trace_state

Valeur d'en-tête OpenTelemetry tracestate, si présente.

CHAÎNE

parent_span_id

span_id de l’étendue parente. NULL pour les étendues racines (une par requête).

CHAÎNE

flags

Masque de bits des indicateurs de trace OpenTelemetry.

INT

name

Nom de span lisible par l’homme, par exemple my-endpoint-mlflow/v1/chat/completions.

CHAÎNE

kind

Type de span : SPAN_KIND_SERVER (racine, un par requête) ou SPAN_KIND_CLIENT (appel en aval).

CHAÎNE

start_time_unix_nano

Heure de start de la portée en nanosecondes depuis l'époque Unix.

BIGINT

end_time_unix_nano

Heure de fin du span en nanosecondes depuis l'époque Unix.

BIGINT

attributes

Attributs de span en tant qu’objet VARIANT. Les noms de clés contiennent des points ; utilisez la syntaxe avec des backticks pour y accéder : attributes:\enduser.id``. Voir les attributs clés ci-dessous.

VARIANT

dropped_attributes_count

Nombre d'attributs supprimés en raison des limites.

INT

events

Tableau d’événements chronométrés au sein du span. Le type d’événement principal est policy_evaluated, qui enregistre les détails de l’évaluation par politique. Voir Événements d’évaluation de politique.

ARRAY<STRUCT\><STRUCT>

dropped_events_count

Nombre d’événements abandonnés en raison des limites.

INT

links

Tableau de Link vers d’autres étendues ou traces.

ARRAY<STRUCT\><STRUCT>

dropped_links_count

Nombre de Link supprimés en raison des limites.

INT

status

Statut de l’étendue avec code (STATUS_CODE_OK ou STATUS_CODE_ERROR) et message en option.

STRUCT

resource

Attributs de ressource décrivant l'entité instrumentée, par exemple service.name et les métadonnées du SDK.

STRUCT

resource_schema_url

URL de schéma pour les conventions sémantiques de la ressource.

CHAÎNE

instrumentation_scope

Nom et version de la bibliothèque d'instrumentation qui a produit le span.

STRUCT

span_schema_url

URL du schéma pour les conventions sémantiques de span.

CHAÎNE

Colonne

Description

Type

record_id

Identifiant unique pour cette ligne de table.

CHAÎNE

time

Timestamp auquel le span a été enregistré.

Horodatage

date

Date UTC à laquelle la portée a été enregistrée. Utile pour l’élagage des partitions.

Date

service_name

Nom du service Unity AI Gateway (nom de l’endpoint).

CHAÎNE

service_id

Identifiant pour le service nommé dans service_name.

CHAÎNE

trace_id

Identifiant partagé par toutes les étendues dans une arborescence de requête unique. Appliquez ce filtre pour reconstruire une trace complète.

CHAÎNE

span_id

Identifiant unique pour ce span.

CHAÎNE

trace_state

Valeur d'en-tête OpenTelemetry tracestate, si présente.

CHAÎNE

parent_span_id

span_id de l’étendue parente. NULL pour les étendues racines (une par requête).

CHAÎNE

flags

Masque de bits des indicateurs de trace OpenTelemetry.

INT

name

Nom de span lisible par l’homme, par exemple my-endpoint-mlflow/v1/chat/completions.

CHAÎNE

kind

Type de span : SPAN_KIND_SERVER (racine, un par requête) ou SPAN_KIND_CLIENT (appel en aval).

CHAÎNE

start_time_unix_nano

Heure de start de la portée en nanosecondes depuis l'époque Unix.

BIGINT

end_time_unix_nano

Heure de fin du span en nanosecondes depuis l'époque Unix.

BIGINT

attributes

Attributs de span en tant qu’objet VARIANT. Les noms de clés contiennent des points ; utilisez la syntaxe avec des backticks pour y accéder : attributes:\enduser.id``. Voir les attributs clés ci-dessous.

VARIANT

dropped_attributes_count

Nombre d'attributs supprimés en raison des limites.

INT

events

Tableau d’événements chronométrés au sein du span. Le type d’événement principal est policy_evaluated, qui enregistre les détails de l’évaluation par politique. Voir Événements d’évaluation de politique.

ARRAY<STRUCT\><STRUCT>

dropped_events_count

Nombre d’événements abandonnés en raison des limites.

INT

links

Tableau de Link vers d’autres étendues ou traces.

ARRAY<STRUCT\><STRUCT>

dropped_links_count

Nombre de Link supprimés en raison des limites.

INT

status

Statut de l’étendue avec code (STATUS_CODE_OK ou STATUS_CODE_ERROR) et message en option.

STRUCT

resource

Attributs de ressource décrivant l'entité instrumentée, par exemple service.name et les métadonnées du SDK.

STRUCT

resource_schema_url

URL de schéma pour les conventions sémantiques de la ressource.

CHAÎNE

instrumentation_scope

Nom et version de la bibliothèque d'instrumentation qui a produit le span.

STRUCT

span_schema_url

URL du schéma pour les conventions sémantiques de span.

CHAÎNE

La table contient également des colonnes nécessaires à son optimisation physique, notamment le clustering, qui ne sont pas utiles pour les queries. Ces colonnes sont nommées avec un préfixe _. Considérez-les comme des détails d’implémentation susceptibles de changer dans les versions futures.

Attributs clés

La colonne attributes est un VARIANT. Accédez aux champs en utilisant la syntaxe avec accents graves pour les clés contenant des points : attributes:\gen_ai.request.model``. Les clés présentes dépendent du fait que le span soit un appel de service de modèle (LLM) ou un appel de service MCP.

Étendues de service de modèle (LLM) :

Attribut

Description

databricks.api_type

Type d’API entrant, par exemple openai/v1/responses.

enduser.id

Utilisateur ou Service Principal ayant effectué la demande.

databricks.requester_type

Type de demandeur, par exemple USER.

databricks.request_id

ID de requête généré par Databricks.

databricks.url

URL complète de la demande.

databricks.latency_ms

Latence de requête de bout en bout en millisecondes.

databricks.time_to_first_byte_ms

Temps jusqu'au premier octet en millisecondes.

databricks.action

Type de tentative, par exemple initial_attempt ou retry.

databricks.destination_id

Modèle cible, par exemple databricks-claude-sonnet-4-6.

databricks.outcome

success ou failure.

gen_ai.operation.name

Opération, par exemple chat.

gen_ai.request.model

Modèle demandé.

gen_ai.provider.name

Fournisseur, par exemple databricks.

gen_ai.usage.input_tokens

Jetons d'entrée consommés.

gen_ai.usage.output_tokens

Jetons de sortie générés.

http.response.status_code

Code de statut HTTP.

error.type

Type d'erreur en cas de défaillance, par exemple invalid_request.

mlflow.chat.tokenUsage

Utilisation détaillée des jetons sous forme de chaîne JSON.

mlflow.spanInputs

Charge utile de requête sérialisée.

mlflow.spanOutputs

Charge utile de réponse sérialisée (vide en cas d’échec).

Attribut

Description

databricks.api_type

Type d’API entrant, par exemple openai/v1/responses.

enduser.id

Utilisateur ou Service Principal ayant effectué la demande.

databricks.requester_type

Type de demandeur, par exemple USER.

databricks.request_id

ID de requête généré par Databricks.

databricks.url

URL complète de la demande.

databricks.latency_ms

Latence de requête de bout en bout en millisecondes.

databricks.time_to_first_byte_ms

Temps jusqu'au premier octet en millisecondes.

databricks.action

Type de tentative, par exemple initial_attempt ou retry.

databricks.destination_id

Modèle cible, par exemple databricks-claude-sonnet-4-6.

databricks.outcome

success ou failure.

gen_ai.operation.name

Opération, par exemple chat.

gen_ai.request.model

Modèle demandé.

gen_ai.provider.name

Fournisseur, par exemple databricks.

gen_ai.usage.input_tokens

Jetons d'entrée consommés.

gen_ai.usage.output_tokens

Jetons de sortie générés.

http.response.status_code

Code de statut HTTP.

error.type

Type d'erreur en cas de défaillance, par exemple invalid_request.

mlflow.chat.tokenUsage

Utilisation détaillée des jetons sous forme de chaîne JSON.

mlflow.spanInputs

Charge utile de requête sérialisée.

mlflow.spanOutputs

Charge utile de réponse sérialisée (vide en cas d’échec).

Spans du service MCP :

Attribut

Description

mcp.method.name

Méthode MCP, par exemple tools/list ou tools/call.

gen_ai.operation.name

Opération, par exemple execute_tool pour tools/call.

gen_ai.tool.name

Nom de l’outil appelé, par exemple atlassianUserInfo.

gen_ai.tool.call.arguments

Arguments d’outil extraits, sous forme de chaîne JSON.

gen_ai.tool.call.result

Résultat de l’outil extrait, sous forme de chaîne JSON.

databricks.requester_type

Type de demandeur, par exemple USER.

databricks.request_id

ID de requête généré par Databricks.

databricks.tool.connection_type

Type de connexion MCP, par exemple EXTERNAL_MCP.

tool_source

Nom de la connexion de sauvegarde ou du serveur MCP géré, par exemple main.default.gh-conn (externe) ou code_interpreter (géré). Le nom du service MCP se trouve dans la colonne service_name.

tool_type

Type d’outil, par exemple external_connection.

workspace_id

ID du Workspace.

enduser.id

Utilisateur ou Service Principal ayant effectué la demande.

http.response.status_code

Statut HTTP de l’appel MCP.

rpc.response.status_code

Code d'état JSON-RPC, par exemple -32003. Le signal de défaillance MCP principal.

error.type

Classification des défaillances, par exemple policy_deny, upstream_error ou internal_error.

mlflow.spanType

Type d’étendue. TOOL pour les spans MCP. Utile pour le filtrage WHERE.

mlflow.spanInputs

Requête JSON-RPC sérialisée.

mlflow.spanOutputs

Réponse MCP/JSON-RPC sérialisée.

Attribut

Description

mcp.method.name

Méthode MCP, par exemple tools/list ou tools/call.

gen_ai.operation.name

Opération, par exemple execute_tool pour tools/call.

gen_ai.tool.name

Nom de l’outil appelé, par exemple atlassianUserInfo.

gen_ai.tool.call.arguments

Arguments d’outil extraits, sous forme de chaîne JSON.

gen_ai.tool.call.result

Résultat de l’outil extrait, sous forme de chaîne JSON.

databricks.requester_type

Type de demandeur, par exemple USER.

databricks.request_id

ID de requête généré par Databricks.

databricks.tool.connection_type

Type de connexion MCP, par exemple EXTERNAL_MCP.

tool_source

Nom de la connexion de sauvegarde ou du serveur MCP géré, par exemple main.default.gh-conn (externe) ou code_interpreter (géré). Le nom du service MCP se trouve dans la colonne service_name.

tool_type

Type d’outil, par exemple external_connection.

workspace_id

ID du Workspace.

enduser.id

Utilisateur ou Service Principal ayant effectué la demande.

http.response.status_code

Statut HTTP de l’appel MCP.

rpc.response.status_code

Code d'état JSON-RPC, par exemple -32003. Le signal de défaillance MCP principal.

error.type

Classification des défaillances, par exemple policy_deny, upstream_error ou internal_error.

mlflow.spanType

Type d’étendue. TOOL pour les spans MCP. Utile pour le filtrage WHERE.

mlflow.spanInputs

Requête JSON-RPC sérialisée.

mlflow.spanOutputs

Réponse MCP/JSON-RPC sérialisée.

Attributs d’application de la politique (étendues du service de modèle et du service MCP) :

Lorsqu’une politique bloque une requête, l’étendue serveur (l’étendue racine) définit les attributs scalaires suivants. Comme ils ne sont définis que lorsqu’une politique court-circuite la requête, ils servent également de filtre rapide pour « une politique a-t-elle bloqué cette requête ? »

Attribut

Description

databricks.policy.name

La politique qui a bloqué la requête. Le FQN de la fonction Unity Catalog pour une politique personnalisée, ou l’étiquette de pièce jointe pour une politique intégrée. <unknown> si la politique est sans nom.

databricks.policy.action

Action appliquée, soit DENY, soit ASK.

Attribut

Description

databricks.policy.name

La politique qui a bloqué la requête. Le FQN de la fonction Unity Catalog pour une politique personnalisée, ou l’étiquette de pièce jointe pour une politique intégrée. <unknown> si la politique est sans nom.

databricks.policy.action

Action appliquée, soit DENY, soit ASK.

Événements d'évaluation de politique

La colonne events contient un tableau de policy_evaluated événements, un par paire (politique, phase) évaluée. C'est ici que se trouvent les détails par politique, au-delà des attributs scalaires databricks.policy.* sur le span serveur. Chaque événement comporte les clés suivantes :

Clé

Description

policy.name

Nom de la politique évaluée.

policy.type

Type de politique, CUSTOM ou BUILTIN.

policy.handler

Gestionnaire pour la politique. Politiques intégrées uniquement.

policy.options

Options du gestionnaire. Stratégies intégrées uniquement.

policy.action

Action évaluée, l’une des suivantes : ALLOW, DENY ou ASK.

policy.phase

Phase d'évaluation, soit on_call, soit on_result. Politiques personnalisées uniquement.

Clé

Description

policy.name

Nom de la politique évaluée.

policy.type

Type de politique, CUSTOM ou BUILTIN.

policy.handler

Gestionnaire pour la politique. Politiques intégrées uniquement.

policy.options

Options du gestionnaire. Stratégies intégrées uniquement.

policy.action

Action évaluée, l’une des suivantes : ALLOW, DENY ou ASK.

policy.phase

Phase d'évaluation, soit on_call, soit on_result. Politiques personnalisées uniquement.

Lorsqu’une politique s’exécute en mode simulation (monitor ou shadow) avec dry_run=true, l’action appliquée est rétrogradée en ALLOW afin que la requête se poursuive, et le verdict potentiel est enregistré sur le même événement :

Clé

Description

policy.dry_run_action

L’action qui aurait été appliquée, par exemple DENY. Sa présence indique que la politique a été exécutée en mode simulation.

policy.dry_run_reason

Raison de l’action potentielle.

policy.dry_run_transformed_message

La charge utile qu’une politique de transformation ou de masquage potentielle aurait écrite.

Clé

Description

policy.dry_run_action

L’action qui aurait été appliquée, par exemple DENY. Sa présence indique que la politique a été exécutée en mode simulation.

policy.dry_run_reason

Raison de l’action potentielle.

policy.dry_run_transformed_message

La charge utile qu’une politique de transformation ou de masquage potentielle aurait écrite.