Anzeigen des Aufgabenverlaufs in Snowsight

Mit Aufgaben (auch Tasks genannt) können Sie die Ausführung von SQL-Code planen. Sie können einen Directed Acyclic Graph (DAG) von Aufgaben erstellen, um anzugeben, wie der in einer Stammaufgabe und einer Menge von abhängigen Aufgaben angegebene SQL-Code ausgeführt werden soll. Eine Aufgabe ist mit einer bestimmten Datenbank und einem bestimmten Schema verbunden. Weitere Informationen zu Aufgaben finden Sie unter Einführung in Aufgaben.

Mit Snowsight können Sie den Ausführungsverlauf von Aufgaben auf verschiedene Weise überprüfen:

  • Anzeigen des Ausführungsverlaufs aller in Ihrem Konto ausgeführten Aufgaben, um z. B. kritische Aufgaben mit Ausführungsfehlern, Aufgaben mit langer Ausführungszeit oder kostenintensive Aufgaben zu identifizieren.

  • Anzeigen des Ausführungsverlaufs einer bestimmten Aufgabe, um weitere Informationen über die Aufgabe zu erhalten.

  • Anzeigen des Ausführungsverlaufs für einen Task-Graphen zu Beobachtungs- und Überwachungszwecken und um Probleme mit einem bestimmten Task-Graphen zu identifizieren.

Sie können den Aufgabenverlauf in SQL auch mithilfe der Tabellenfunktion TASK_HISTORY oder der Ansicht Ansicht TASK_HISTORY überprüfen.

Unter diesem Thema:

Erforderliche Berechtigungen für das Anzeigen der Aufgabenverlaufs

Um den Aufgabenverlauf in Snowsight einsehen zu können, benötigen Sie dieselben Berechtigungen, die für das Ausführen der Tabellenfunktionen TASK_HISTORY und COMPLETE_TASK_GRAPHS erforderlich sind.

Verwenden Sie eine der folgenden Rollen:

  • Rolle ACCOUNTADMIN

  • Rolle mit OWNERSHIP-Berechtigung für die Aufgabe

  • Rolle mit der globalen Berechtigung MONITOR EXECUTION und der Berechtigung USAGE für die Datenbank und das Schema, in denen die Aufgabe gespeichert ist

Die Rolle, die Sie verwenden, muss in der Lage sein, die Account Usage-Ansicht TASK_HISTORY abzufragen. Sie können dieser Rolle die Datenbankrolle USAGE_VIEWER der freigegebenen SNOWFLAKE-Datenbank zuweisen.

Um beispielsweise die Historie einer bestimmten Aufgabe mytask anzuzeigen, benötigt die kundenspezifische Rolle myrole Folgendes:

  • OWNERSHIP-Berechtigungen für die Aufgabe

  • Datenbankrolle USAGE_VIEWER in der freigegebenen SNOWFLAKE-Datenbank

Um diese Berechtigungen zu erteilen, führen Sie die folgenden SQL-Befehle aus:

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

Weitere Details dazu finden Sie unter:

Einzelne Aufgaben anzeigen und verwalten

Um eine Aufgabe in Snowsight anzuzeigen und zu verwalten, gehen Sie wie folgt vor:

  1. Melden Sie sich bei Snowsight an.

  2. Wählen Sie Data » Databases aus.

  3. Wählen Sie für eine bestimmte Datenbank und ein bestimmtes Schema Tasks aus, und wählen Sie dann die Aufgabe aus, die Sie verwalten möchten.

Wenn Sie die Aufgabe in Snowsight anzeigen, können Sie Folgendes tun:

  • Überprüfen Sie im Bereich Details die Aufgaben-ID, das von der Aufgabe verwendete Warehouse, Zeitplan, Status und alle Vorgängeraufgaben.

  • Überprüfen Sie im Bereich Task Definition die SQL-Anweisung, die zum Erstellen der Aufgabe verwendet wurde.

  • Verwalten Sie die Berechtigungen für die Aufgabe. Siehe Verwalten von Objektberechtigungen mit Snowsight.

  • Wählen Sie die Aktionsschaltfläche aus, um den Aufgabennamen oder -kommentar zu bearbeiten, die Aufgabe zu klonen, die Aufgabe zu löschen oder die Eigentümerschaft der Aufgabe auf eine andere Rolle zu übertragen.

Anzeigen einzelner Task-Graphen

Überprüfen Sie einen Task-Graphen, um eine Stammaufgabe und deren abhängige Aufgaben in Form eines DAG anzuzeigen. Beim Überprüfen eines Task-Graphen haben Sie folgende Optionen:

  • Anzeigen von Aufgabeninformationen, einschließlich des Status der Stammaufgabe und der ausgewählten abhängigen Aufgabe

  • Untersuchen des Task-Graphen, einschließlich der Stammaufgabe und der abhängigen Aufgaben im Task-Graphen. Weitere Informationen dazu finden Sie unter DAG von Aufgaben.

  • Auswählen einer Aufgabe im Task-Graphen, um zusätzliche Details anzuzeigen, z. B. die Vorgängeraufgaben, das zur Ausführung der Aufgabe verwendete Warehouse und die Rolle, die Eigentümer der Aufgabe ist.

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

Gehen Sie wie folgt vor, um den Task-Graphen eines bestimmten Datenbankschema anzuzeigen:

  1. Melden Sie sich bei Snowsight an.

  2. Wählen Sie im Navigationsmenü die Option Data » Databases aus.

  3. Verwenden Sie den Objekt-Explorer, um die Datenbank und das Schema zu finden, die die Aufgaben enthalten, die Sie anzeigen möchten.

  4. Wählen Sie unter dem ausgewählten Schema die Option Tasks aus.

  5. Wählen Sie die entsprechende Aufgabe aus.

    Die Aufgabendetails und die zusätzlichen Registerkarten Graph und Run History werden angezeigt.

  6. Wählen Sie die Registerkarte Graph aus, um den Task-Graphen anzuzeigen.

    Der Task-Graph wird als Hierarchie von Aufgaben angezeigt.

  7. Wählen Sie eine Aufgabe aus, um Details im Kontext des Task-Graphen anzuzeigen.

Bemerkung

Daten zum Aufgabenverlauf sind nur verfügbar, wenn die Aufgabe in den letzten 7 Tagen ausgeführt wurde.

Überprüfen des Ausführungsverlaufs einer Aufgabe

Der Ausführungsverlauf einer Aufgabe enthält Details über jede Ausführung einer bestimmten Aufgabe. Sie können die geplante Zeit, die tatsächliche Startzeit, die Dauer einer Aufgabe und andere Informationen einsehen.

Snowsight task history page with annotations for each section.

Zu jeder Instanz können die folgenden Informationen angezeigt werden:

  • Geplante Startzeit: Wann soll die Aufgabe das nächste Mal ausgeführt werden.

  • Status: Status der letzten Ausführung.

  • Dauer: Zeitdauer der letzten Ausführung in Sekunden.

  • Abfrage: Anzeige des Query Profile oder der Anweisungen der Aufgabe in einem Arbeitsblatt.

So zeigen Sie die Ausführungsverlauf an:

  1. Melden Sie sich bei Snowsight an.

  2. Wählen Sie Data » Databases aus.

  3. Navigieren Sie im rechten Fensterbereich mit dem Objekt-Explorer zu einer Datenbank und einem Schema.

  4. Erweitern Sie unter dem ausgewählten Schema den Eintrag Tasks.

  5. Wählen Sie eine Aufgabe aus. Es werden Informationen zur Aufgabe angezeigt sowie die Unterregisterkarten Task Details, Graph und Run History.

  6. Wählen Sie die Registerkarte Run History aus.

Bemerkung

Daten zum Aufgabenverlauf sind nur verfügbar, wenn die Aufgabe in den letzten 7 Tagen ausgeführt wurde.

Überprüfen des Aufgabenverlaufs auf Kontoebene

Überprüfen Sie den Verlauf von Aufgabenausführungen auf Kontoebene, um fehlgeschlagene Aufgaben, Aufgaben mit langer Ausführungszeit und andere Überwachungs- und Debugging-Fälle für ein gesamtes Konto und nicht nur für eine bestimmte Aufgabe zu identifizieren.

Gehen Sie wie folgt vor, um den Verlauf von Aufgaben auf Kontoebene anzuzeigen:

  1. Melden Sie sich bei Snowsight an.

  2. Wählen Sie im Navigationsmenü die Option Activity » Task History aus.

  3. Um einzelne Aufgabenausführungen anzuzeigen, wählen Sie unter den Filtern View » Task Runs aus.

Nachdem Sie den Verlauf von Aufgabenausführungen ausgewählt haben, können Sie die Seite filtern, um relevante Informationen anzuzeigen.

  • Wählen Sie den Filter Date Range aus, um den Aufgabenverlauf für den vergangenen Tag bis zu den letzten 12 Monaten oder für einen kundenspezifischen Bereich anzuzeigen.

  • Wählen Sie den Filter Task status aus, um den Aufgabenverlauf für einen oder mehrere Status anzuzeigen, wie Succeeded, Failed, Cancelled oder Skipped.

  • Filtern Sie nach dem Namen der Aufgabe, um Muster im Status oder in der Ausführungsdauer bestimmter Aufgaben im Zeitverlauf zu erkennen.

  • Filtern Sie nach dem Namen der Datenbank oder des Schemas, das die Aufgaben enthält.

Um beispielsweise Aufgaben mit langen Ausführungszeiten zu identifizieren, wählen Sie den Filter Status aus, um nur erfolgreich ausgeführte Aufgaben anzuzeigen, und sortieren Sie dann das Feld Duration in absteigender Reihenfolge. Für fortgeschrittenes Debugging können Sie mit der Schaltfläche Open in worksheets die gefilterte und sortierte Tabelle in Arbeitsblättern öffnen. Sie könnten dann die SQL-Anweisung mit LIMIT / FETCH- und GROUP BY-Argumenten ändern, um die Datenbanken und Schemas mit den 25 am längsten ausgeführten Aufgaben zu ermitteln.

Sie können auch eine bestimmte Aufgabe auswählen, um weitere Details zu erhalten.

Überprüfen des Verlaufs des Task-Graphen auf Kontoebene

Überprüfen Sie den Verlauf von Task-Graphen auf Kontoebene, um fehlgeschlagene kritische Aufgaben zu ermitteln, die die Fertigstellung eines Task-Graphen verhindern, um Aufgaben mit langer Ausführungszeit, ineffiziente Task-Graphen oder Task-Graphen, die häufig fehlschlagen, zu identifizieren und um andere Überwachungs- und Debugging-Fälle für das gesamte Konto zu erkennen.

Gehen Sie wie folgt vor, um den Verlauf von Task-Graphen auf Kontoebene anzuzeigen:

Bemerkung

Sie müssen eine Rolle verwenden, die über die erforderlichen Berechtigungen für die Anzeige des Aufgabenverlaufs verfügt.

  1. Melden Sie sich bei Snowsight an.

  2. Wählen Sie im Navigationsmenü die Option Activity » Task History aus.

    Standardmäßig zeigt die Seite alle Task-Graph-Ausführungen des letzten Tages als Histogramm und Tabelle an.

Nachdem Sie den Verlauf von Task-Graph-Ausführungen ausgewählt haben, können Sie die Seite filtern, um die relevanten Informationen anzuzeigen.

  • Wählen Sie den Filter Date Range aus, um den Aufgabenverlauf für einen längeren Zeitbereich, bis für die letzten 12 Monate, anzuzeigen.

  • Wählen Sie den Filter Graph status aus, um den Ausführungsverlauf für einen oder mehrere Task-Graph-Status anzuzeigen, wie Succeeded, Failed, Cancelled oder Skipped. Wenn eine Aufgabe im Task-Graph fehlgeschlagen ist, wird der gesamte Task-Graph als Failed angezeigt.

  • Filtern Sie nach dem Namen der Datenbank und optional nach einem Schema, das die Stammaufgaben des Task-Graphen enthält.

  • Nach Auswahl der Datenbank und optional des Schemas filtern Sie nach dem Namen der Stammaufgabe, um Muster bezüglich Status oder Ausführungsdauer bestimmter Aufgabetypen im Zeitverlauf zu erkennen. Möglicherweise sehen Sie Stammaufgaben, für die Ihre aktive Rolle keine Berechtigung zur Anzeige hat.

Um beispielsweise Task-Graphen mit fehlerhaften Aufgaben zu identifizieren, wählen Sie den Filter Graph status aus, um nur fehlgeschlagene Aufgaben anzuzeigen. Sie können den Mauszeiger über eine fehlgeschlagene Aufgabe bewegen, um weitere Details zu dem Fehler zu erhalten. Für fortgeschrittenes Debugging können Sie mit der Schaltfläche Open in worksheets die gefilterte und sortierte Tabelle in Arbeitsblättern öffnen. Sie könnten dann die SQL-Anweisung mit LIMIT / FETCH- und GROUP BY-Argumenten ändern, um beispielsweise die Datenbanken und Schemas zu den ersten 25 fehlerhaften Aufgaben zu ermitteln.

Debuggen einer bestimmten Task-Graph-Ausführung

Für das Anzeigen des Task-Graph-Verlaufs auf Kontoebene wählen Sie eine bestimmte Task-Graph-Ausführung aus, um weitere Details anzuzeigen. Wenn Sie Zugriff auf die Historie der Aufgaben im Task-Graph haben, wird die Task-Graph-Ausführung angezeigt, andernfalls erhalten Sie eine Fehlermeldung.

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.

Sie können z. B. eine bestimmte fehlgeschlagene Task-Graph-Ausführung auswählen, um den gesamten Task-Graphen anzuzeigen und die Aufgaben zu identifizieren, die aufgrund bestimmter fehlgeschlagener Aufgaben oder angehaltener Aufgaben nicht ausgeführt wurden. Oder Sie können eine Aufgabe mit besonders langer Ausführungszeit identifizieren, die zur Verzögerung bei abhängigen Aufgabenausführungen im Task-Graphen führt.

Für eine bestimmte Aufgabe in einem Task-Graphen können Sie zusätzliche Details erfahren, indem Sie den Mauszeiger über verschiedene Aspekte der Aufgabe bewegen:

  • Warehouse-Metadaten geben an, welches Warehouse zur Ausführung der Aufgabe verwendet wird, einschließlich des Status und der Größe, was dabei helfen kann, Aufgaben zu identifizieren, die aufgrund der Warehouse-Größe sehr langsam ausgeführt werden oder zur Warehouse-Auslastung beitragen.

  • Metadaten zur Stream-Bedingung zeigen die Details des Tabellenstreams an und geben an, ob die Bedingungen für die Aufgabe auf wahr oder falsch gesetzt wurden.

  • Wählen Sie Go to Task Page aus, um zusätzliche Details zu der Aufgabe anzuzeigen.

Für jede Aufgabe wird der Status angezeigt, z. B. Succeeded, Failed, Skipped, Suspended, Cancelled oder Did not run, zusammen mit einer entsprechenden Farbe. Sie können den Mauszeiger über den Status von fehlgeschlagenen, übersprungenen und abgebrochenen Aufgaben bewegen, um weitere Informationen zu erhalten.

Zusätzlich zum Task-Graphen können Sie eine Tabelle prüfen, die beschreibt, welche Aufgaben ausgeführt wurden, die Startzeit jeder Aufgabe, die Dauer jeder Aufgabenausführung, den Status jeder Aufgabe und eine Zeitleiste, die die Sequenz der Aufgabenausführungen darstellt. Anhand der Zeitleiste können Sie schnell feststellen, warum eine Task-Graph-Ausführung langsam war und welche Aufgabe mit langer Ausführungszeit den Start einer abhängigen Aufgabe möglicherweise verzögert hat.

Für jede Aufgabe in der Tabelle können Sie das Menü auswählen, um die Abfrage-ID für die Aufgabe in einem Arbeitsblatt oder das Query Profile zu öffnen.