Übersicht zu Protokollierung und Ablaufverfolgung

Sie können die Aktivität des Handler-Codes Ihrer Snowflake-Funktion oder -Prozedur (einschließlich des Codes, den Sie unter Verwendung der Snowpark-APIs schreiben) aufzeichnen, indem Sie Protokollmeldungen und Ablaufverfolgungsereignisse des Codes während der Ausführung erfassen. Die gesammelten Daten können Sie dann mit SQL abfragen, um die Ergebnisse zu analysieren.

Sie können insbesondere Folgendes erfassen und auswerten:

  • Protokollmeldungen, bei denen es sich um unabhängige, detaillierte Meldungen mit Informationen zum Status eines bestimmten Teils Ihres Codes handelt.

  • Ablaufverfolgungsereignisse mit strukturierten Daten, die Sie verwenden können, um Informationen zu erhalten, die mehrere Teile Ihres Codes umfassen und gruppieren.

Erste Schritte

Führen Sie die folgenden Schritte aus, um mit dem Erfassen und Verwenden von Protokoll- und Ablaufverfolgungsdaten zu beginnen.

  1. Ereignistabelle erstellen.

    In Snowflake speichern Sie Protokoll- und Ablaufverfolgungsdaten in einer Ereignistabelle, einer speziellen Art von Tabelle mit einem vordefinierten Satz von Spalten.

  2. Ausgabe der Protokoll- oder Ablaufverfolgungsdaten aus dem Handler-Code starten.

    Sobald Sie eine Ereignistabelle erstellt und mit Ihrem Konto verknüpft haben, können Sie eine API in der Sprache Ihres Handlers verwenden, um Protokollmeldungen aus dem Handler-Code auszugeben. Nachdem Sie die Protokoll- und Ablaufverfolgungsdaten erfasst haben, können Sie die Daten abfragen, um die Ergebnisse zu analysieren.

    Weitere Informationen dazu finden Sie unter:

  3. Ereignistabelle zur Analyse der gesammelten Protokoll- und Ablaufverfolgungsdaten abfragen.

    Weitere Informationen dazu finden Sie unter:

Vergleich von Protokollmeldungen und Ablaufverfolgungsereignissen

In der folgenden Tabelle werden die Eigenschaften und Vorteile von Protokollmeldungen und Ablaufverfolgungsereignissen verglichen.

Eigenschaft

Protokolleinträge

Ablaufverfolgungsereignisse

Verwendungszweck

Erfassen detaillierte, aber unstrukturierte Informationen zum Status des Codes. Verwenden Sie diese Informationen, um zu verstehen, was während eines bestimmten Aufrufs Ihrer Funktion oder Prozedur passiert ist.

Zeichnen eine kurze, aber strukturierte Zusammenfassung zu jedem Aufruf Ihres Codes auf. Fassen Sie diese Informationen zusammen, um das Verhalten Ihres Codes auf einer allgemeineren Ebene zu verstehen.

Struktur als Nutzdaten

Keine. Ein Protokolleintrag ist nur eine Zeichenfolge.

Strukturiert durch Attribute, die Sie an Ablaufverfolgungsereignisse anhängen können. Attribute sind Schlüssel-Wert-Paare, die sich einfach mit einer SQL-Abfrage abfragen lassen.

Unterstützt das Gruppieren

Nein. Jeder Protokolleintrag ist ein unabhängiges Ereignis.

Ja. Ablaufverfolgungsereignisse werden in Bereichen (Spans) organisiert. Ein Bereich (Span) kann seine eigenen Attribute haben.

Mengenbegrenzung

Unbegrenzt. Alle von Ihrem Code ausgegebenen Protokolleinträge werden in die Ereignistabelle aufgenommen.

Die Anzahl der Ablaufverfolgungsereignisse pro Bereich (Span) ist auf 128 begrenzt. Es gibt auch eine Begrenzung für die Anzahl der Span-Attribute.

Komplexität der Abfragen auf den erfassten Daten

Relativ hoch. Abfragen müssen jeden Protokolleintrag analysieren, um daraus sinnvolle Informationen extrahieren zu können.

Relativ niedrig. Abfragen können sich die strukturierte Form der Ablaufverfolgungsereignisse zunutze machen.