Catégories :

Information Schema , Fonctions de table

DBT_PROJECT_EXECUTION_HISTORY

Renvoie l’historique d’exécution des projets dbt sur Snowflake.

Appelez cette fonction pour obtenir les métadonnées et les résultats des exécutions passées des projets dbt dans les sept jours précédant la date actuelle. En option, spécifiez les valeurs à utiliser pour filtrer les résultats.

Utilisez cette fonction avec les fonctions système suivantes pour accéder aux artefacts et aux journaux dbt de manière programmatique :

Pour plus d’informations, voir Accéder aux artefacts et aux journaux dbt de manière programmatique.

Voir aussi :

CREATE DBT PROJECT, EXECUTE DBT PROJECT

Syntaxe

DBT_PROJECT_EXECUTION_HISTORY (
  [ OBJECT_NAME => '<name>' ]
  [ , OBJECT_TYPE = { WORKSPACE | DBT PROJECT }]
  [ , START_TIME_RANGE_START => <start_time> ]
  [ , START_TIME_RANGE_END => <end_time>  ]
  [ , RESULT_LIMIT = <integer> ]
  [ , COMMAND = <dbt_command> ]
  [ , USER_NAME = <user_name> ]
  [ , DATABASE = <db_name> ]
  [ , SCHEMA = <schema_name> ]
)
Copy

Arguments

OBJECT_NAME = <name>

Nom de l’espace de travail ou du projet dbt auquel appartient l’exécution.

De plus, l’identificateur doit commencer par un caractère alphabétique et ne peut pas contenir d’espaces ou de caractères spéciaux à moins que toute la chaîne d’identificateur soit délimitée par des guillemets doubles (par exemple, "My object"). Les identificateurs entre guillemets doubles sont également sensibles à la casse.

Pour plus d’informations, voir Exigences relatives à l’identificateur.

OBJECT_TYPE = { WORKSPACE | DBT PROJECT }

Type de l’objet, WORKSPACE ou DBT PROJECT, auquel appartient l’exécution.

START_TIME_RANGE_START | START_TIME_RANGE_END = timestamp

Horodatage permettant de filtrer une plage d’exécutions du projet dbt.

RESULT_LIMIT = integer

Nombre entier spécifiant le nombre maximum de lignes renvoyé par la fonction, compris entre 1 et 10 000.

Par défaut : 100

COMMAND = dbt_command

Spécifie la commande dbt utilisée pour exécuter le projet dbt.

USER_NAME = user_name

Nom de l’utilisateur qui a lancé l’exécution de l’objet du projet dbt.

DATABASE = db_name

Renvoie uniquement les enregistrements de la base de données spécifiée.

SCHEMA = schema_name

Renvoie uniquement les enregistrements du schéma spécifié.

Sortie

La fonction renvoie les colonnes suivantes.

Pour voir ces colonnes, vous devez utiliser un rôle avec le privilège MONITOR.

Nom de la colonne

Type de données

Description

QUERY_ID

TEXT

ID de la requête.

QUERY_START_TIME

TIMESTAMP_LTZ

Heure à laquelle la requête a commencé.

QUERY_END_TIME

TIMESTAMP_LTZ

Heure à laquelle la requête s’est terminée.

USER_NAME

TEXT

Utilisateur qui a créé le projet dbt.

OBJECT_NAME

TEXT

Nom de l’espace de travail ou du projet dbt auquel appartenait l’exécution.

OBJECT_TYPE

TEXT

Type d’objet, tel que WORKSPACE ou DBT PROJECT.

DATABASE_NAME

TEXT

Base de données de l’objet.

SCHEMA_NAME

TEXT

Schéma de l’objet.

COMMAND

TEXT

Commande qui a été exécutée pour l’objet.

ARGS

TEXT

Arguments qui ont été utilisés dans l’exécution de l’objet.

ERROR_CODE

NUMBER

Le cas échéant, code d’erreur de l’exécution.

ERROR_MESSAGE

TEXT

Le cas échéant, message d’erreur indiquant pourquoi l’exécution a échoué.

WAREHOUSE

TEXT

Entrepôt utilisé pour l’objet.

STATE

TEXT

État d’exécution, par exemple HANDLED_ERROR ou SUCCESS.

Exigences en matière de contrôle d’accès

Cette fonction comprend uniquement les exécutions à partir d’espaces de travail et de projets dbt pour lesquels vous disposez des privilèges suivants :

  • OWNERSHIP ou USAGE pour les espaces de travail

  • OWNERSHIP, USAGE ou MONITOR pour les projets dbt

Notes sur l’utilisation

  • Utilisez le nom exact du projet dbt (sensible à la casse s’il est créé avec des guillemets). Si aucune ligne ne correspond (nom de projet dbt incorrect ou aucune exécution), vous pouvez obtenir une erreur Inputs may not be null..

Exemples

Pour des exemples d’utilisation de la fonction de table DBT_PROJECT_EXECUTION_HISTORY, consultez Accéder aux artefacts et aux journaux dbt de manière programmatique.