Affichage de l’historique des tâches dans Snowsight

Les tâches vous permettent de planifier l’exécution de code SQL. Vous pouvez créer un graphe acyclique dirigé (DAG) contenant des tâches pour spécifier comment exécuter le code SQL spécifié dans une tâche racine et un ensemble de tâches dépendantes. Une tâche est associée à une base de données et à un schéma spécifiques. Pour plus de détails sur les tâches, reportez-vous à Introduction aux tâches.

À l’aide de Snowsight, vous pouvez revoir l’historique d’exécution des tâches de plusieurs manières différentes :

  • Voir l’historique d’exécution de toutes les tâches exécutées dans votre compte, par exemple pour identifier les tâches critiques qui n’ont pas été exécutées, les tâches de longue durée ou les tâches qui augmentent les coûts.

  • Voir l’historique d’exécution d’une tâche spécifique, afin de recueillir plus d’informations sur cette tâche.

  • Voir l’historique d’exécution d’un graphique de tâches, à des fins d’observabilité et de surveillance et pour aider à identifier les problèmes d’un graphique de tâches spécifique.

Vous pouvez également consulter l’historique des tâches en SQL en utilisant une fonction de table TASK_HISTORY ou une vue Vue TASK_HISTORY.

Dans ce chapitre :

Privilèges requis pour voir l’historique des tâches

Pour voir l’historique des tâches dans Snowsight, vous devez disposer des mêmes privilèges que ceux requis pour exécuter les fonctions des tables TASK_HISTORY et COMPLETE_TASK_GRAPHS.

Utilisez l’un des rôles suivants :

  • Le rôle ACCOUNTADMIN.

  • Un rôle avec le privilège OWNERSHIP sur la tâche.

  • Un rôle avec le privilège global MONITOR EXECUTION ainsi que le privilège USAGE sur la base de données et le schéma qui stockent la tâche.

Le rôle que vous utilisez doit pouvoir interroger la vue TASK_HISTORY Account Usage. Vous pouvez attribuer le rôle de base de données USAGE_VIEWER dans la base de données partagée SNOWFLAKE à ce rôle.

Par exemple, pour voir l’historique d’une tâche spécifique mytask, le rôle personnalisé myrole a besoin :

  • De privilège OWNERSHIP sur la tâche.

  • Du rôle de base de données USAGE_VIEWER dans la base de données SNOWFLAKE partagée.

Pour accorder ces privilèges, exécutez les commandes SQL suivantes :

GRANT OWNERSHIP ON TASK mytask TO ROLE myrole;
GRANT DATABASE ROLE USAGE_VIEWER TO ROLE myrole;
Copy

Pour plus de détails, voir :

Affichage des graphiques de tâches individuelles

Examinez un graphique de tâches pour voir une tâche racine et ses tâches dépendantes au format DAG. Lorsque vous examinez un graphique de tâches, vous pouvez effectuer les opérations suivantes :

  • Voir les informations sur les tâches, y compris le statut par tâche racine et tâche enfant sélectionnée.

  • Voir le graphique des tâches, y compris les tâches racines et les tâches dépendantes dans le graphique. Reportez-vous à DAG de tâches.

  • Sélectionnez une tâche sur le graphique pour voir des détails supplémentaires, tels que les tâches prédécesseurs, l’entrepôt utilisé pour exécuter la tâche et le rôle auquel la tâche appartient.

Example task graph shown in Snowsight, with annotations showing the navigation to view the task graph as described in the following task.

Pour voir un graphique de tâches pour un schéma de base de données spécifique, procédez comme suit :

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Data » Databases.

  3. Utilisez l’explorateur d’objets pour localiser la base de données et le schéma qui contiennent les tâches que vous voulez voir.

  4. Pour le schéma sélectionné, sélectionnez Tasks.

  5. Sélectionnez une tâche spécifique.

    Les détails de la tâche apparaissent, avec les onglets supplémentaires Graph et Run History.

  6. Sélectionnez l’onglet Graph pour voir le graphique des tâches.

    Le graphique des tâches apparaît, affichant une hiérarchie des tâches.

  7. Sélectionnez une tâche pour voir les détails dans le contexte du graphique.

Note

Les données de l’historique des tâches ne sont disponibles que si la tâche a été exécutée au cours des 7 derniers jours.

Revoir l’historique d’exécution d’une tâche

L’historique d’exécution des tâches comprend des détails sur chaque exécution d’une tâche donnée. Vous pouvez voir l’heure prévue, l’heure de début réelle, la durée d’une tâche et d’autres informations.

Snowsight task history page with annotations for each section.

Pour chaque instance, vous pouvez voir les éléments suivants :

  • Heure de début programmée : Quand la prochaine exécution de la tâche est-elle prévue ?

  • Statut : Statut de l’exécution la plus récente.

  • Durée : Durée, en secondes, de l’exécution la plus récente.

  • Requête : Voyez le profil de requête de tâche ou les instructions de tâche dans une feuille de calcul.

Pour voir l’historique de l’exécution :

  1. Connectez-vous à Snowsight.

  2. Sélectionnez Data » Databases.

  3. Dans le volet de droite, à l’aide de l’explorateur d’objets, naviguez vers une base de données et un schéma.

  4. Pour le schéma sélectionné, sélectionnez et développez Tasks.

  5. Sélectionnez une tâche. Les informations sur la tâche s’affichent, y compris les sous-onglets Task Details, Graph et Run History.

  6. Sélectionnez l’onglet Run History.

Note

Les données de l’historique des tâches ne sont disponibles que si la tâche a été exécutée au cours des 7 derniers jours.

Affichage de l’historique des tâches au niveau du compte

Examinez l’historique des exécutions de tâches au niveau du compte pour identifier les tâches qui échouent, les tâches qui durent longtemps et d’autres cas de surveillance et de débogage pour un compte entier, plutôt que pour une tâche spécifique.

Pour voir l’historique des tâches au niveau du compte, procédez comme suit :

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Activity » Task History.

  3. Pour voir les exécutions de tâches individuelles, sélectionnez View » Task Runs dans les filtres.

Après avoir sélectionné l’historique des exécutions de tâches, vous pouvez filtrer la page pour afficher les informations pertinentes.

  • Sélectionnez le filtre Date Range pour afficher l’historique des tâches du dernier jour aux 12 derniers mois, ou une plage personnalisée.

  • Sélectionnez le filtre Task status pour afficher l’historique des tâches pour un ou plusieurs statuts, tels que Succeeded, Failed, Cancelled ou Skipped.

  • Filtrez par nom de tâche pour voir les tendances en matière de statut ou de durée dans le temps pour des tâches spécifiques.

  • Filtrez par nom de la base de données ou du schéma qui contient les tâches.

Par exemple, pour identifier les tâches de longue durée, sélectionnez le filtre Status pour n’afficher que les tâches réussies, et triez le champ Duration par ordre décroissant. Pour un débogage avancé, vous pouvez ouvrir le tableau filtré et trié dans les feuilles de calcul en utilisant le bouton Open in worksheets. Vous pouvez alors modifier l’instruction SQL avec les arguments LIMIT / FETCH et GROUP BY pour identifier les bases de données et les schémas avec un classement des 25 plus longues tâches.

Vous pouvez également sélectionner une tâche spécifique pour obtenir plus de détails.

Affichage de l’historique du graphique des tâches au niveau du compte

Voir l’historique des graphiques de tâches au niveau du compte afin d’identifier les tâches critiques qui empêchent un graphique de se terminer, les tâches de longue durée, les graphiques de tâches inefficaces ou qui échouent fréquemment, ainsi que d’autres cas de surveillance et de débogage pour un compte entier.

Pour voir l’historique des graphiques de tâches au niveau du compte, procédez comme suit :

Note

Vous devez utiliser un rôle qui possède les privilèges requis pour afficher l’historique des tâches.

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Activity » Task History.

    Par défaut, la page affiche toutes les exécutions du graphique des tâches du dernier jour sous forme d’histogramme et de tableau.

Après avoir sélectionné l’historique des exécutions du graphique des tâches, vous pouvez filtrer la page pour afficher les informations pertinentes.

  • Sélectionnez le filtre Date Range pour afficher l’historique des tâches sur une période plus longue, jusqu’aux 12 derniers mois.

  • Sélectionnez le filtre Graph status pour afficher l’historique d’exécution d’un ou plusieurs statuts de graphiques de tâches, tels que Succeeded, Failed, Cancelled, ou Skipped. Si une tâche du graphique a échoué, le graphique entier est représenté par Failed.

  • Filtre sur le nom de la base de données, et éventuellement d’un schéma, qui contient les tâches racines pour les graphiques de tâches.

  • Après avoir sélectionné la base de données et le schéma facultatif, filtrez par nom de la tâche racine pour voir les modèles de statut ou de durée dans le temps pour des graphiques de tâches spécifiques. Il se peut que vous voyiez des tâches racines que votre rôle actif n’a pas le droit de visualiser.

Par exemple, pour identifier les graphiques de tâches avec des tâches qui ont échoué, sélectionnez le filtre Graph status pour afficher uniquement les tâches qui ont échoué. Vous pouvez passer la souris sur une tâche qui a échoué pour obtenir plus de détails sur l’échec. Pour un débogage avancé, ouvrez le tableau filtré et trié dans les feuilles de calcul en utilisant le bouton Open in worksheets. Vous pouvez alors modifier l’instruction SQL avec les arguments LIMIT / FETCH et GROUP BY afin d’identifier, par exemple, les bases de données et les schémas avec un classement des 25 tâches qui échouent le plus fréquemment.

Débogage de l’exécution d’un graphique de tâches spécifique

Lorsque vous consultez l’historique du graphique des tâches au niveau du compte, sélectionnez une exécution spécifique du graphique des tâches pour obtenir plus de détails. Si vous avez accès à la visualisation de l’historique des tâches dans le graphique, l’exécution du graphique des tâches s’affiche, une erreur apparaît.

Snowsight task graph showing one root task with 3 dependent tasks, and 4 dependent tasks of those predecessors. The Task titled ROOT_TASK succeeded while showing a slightly longer duration than other tasks, along with INSERT_1 task. Two dependent tasks of INSERT_2 ran but failed, and the third dependent task succeeded. The highlighted task failed.

Par exemple, vous pouvez sélectionner une exécution spécifique du graphique des tâches ayant échoué pour voir le graphique complet et identifier les tâches qui n’ont pas été exécutées en raison de l’échec de tâches spécifiques, de tâches suspendues, ou identifier une tâche de longue durée qui retarde l’exécution d’une tâche dépendante dans le graphique.

Pour une tâche spécifique dans le graphique des tâches, vous pouvez obtenir des détails supplémentaires sur la tâche en survolant les différents aspects de la tâche :

  • Les métadonnées de l’entrepôt identifient l’entrepôt utilisé pour exécuter la tâche, y compris son statut et sa taille, ce qui peut aider à identifier les tâches qui s’exécutent lentement en raison de la taille de l’entrepôt ou qui contribuent à l’utilisation de l’entrepôt.

  • Les métadonnées de condition de flux affichent les détails du flux de table et indiquent si les conditions ont été définies comme vraies ou fausses pour la tâche.

  • Sélectionnez Go to Task Page pour afficher des détails supplémentaires sur la tâche.

Chaque tâche affiche un état, tel que Succeeded, Failed, Skipped, Suspended, Cancelled, ou Did not run, ainsi qu’une couleur correspondante. Vous pouvez survoler l’état des tâches échouées, ignorées et annulées pour obtenir plus d’informations.

En plus du graphique des tâches, vous pouvez voir un tableau décrivant les tâches exécutées, l’heure de début de chaque tâche, la durée de chaque exécution de tâche, le statut de chaque tâche, et une ligne de temps représentant la séquence des exécutions de tâches. Grâce à la chronologie, vous pouvez rapidement déterminer pourquoi l’exécution d’un graphique de tâches était lente, et quelle tâche longuement exécutée a pu retarder le démarrage d’une tâche dépendante.

Pour chaque tâche du tableau, vous pouvez sélectionner le menu plus pour ouvrir l’ID de la requête de la tâche dans une feuille de calcul, ou ouvrir le profil de requête.