Kategorien:

Information Schema, Tabellenfunktionen

APPLICATION_CALLBACK_HISTORY

Gibt Informationen zum Verlauf der Callback-Aufrufe für Snowflake Native Apps in Ihrem Snowflake Konto zurück. Jede Zeile repräsentiert einen Callback-Aufruf, einschließlich des Callback-Typs, des Ausführungsmodus, des Status und aller Fehlerinformationen.

Syntax

APPLICATION_CALLBACK_HISTORY(
  [ APPLICATION_NAME => '<application_name>' ]
  [ , CALLBACK_TYPE => '<callback_manifest_name>' ]
  [ , LIMIT => <number> ]
)

Optionale Argumente

APPLICATION_NAME => 'application_name'

Der Name der App, für die der Callback-Verlauf abgerufen werden soll. Wenn nicht angegeben, wird der Verlauf für alle Apps im Konto zurückgegeben.

CALLBACK_TYPE => 'callback_manifest_name'

Der Callback-Typ, wie in der Manifest-Datei definiert. Wenn nicht angegeben, wird der Verlauf für alle Callback-Typen in der angegebenen App zurückgegeben.

LIMIT => number

Die maximale Anzahl der zurückzugebenden Zeilen. Der Standardwert ist 100. Das Maximum ist 10000.

Nutzungshinweise

  • Beim Aufrufen einer Tabellenfunktion des Information Schema muss die Sitzung über ein aktives INFORMATION_SCHEMA-Schema verfügen oder der Funktionsname muss vollqualifiziert sein. Weitere Details dazu finden Sie unter Snowflake Information Schema.

  • Die Spalten QUERY_TEXT und ERROR_MESSAGE werden ausgeblendet, es sei denn, der Aufrufende ist die App selbst.

  • Die Verwendung dieser Funktion erfordert eine der folgenden Voraussetzungen:

    • OWNERSHIP für die App.

    • MONITOR-Berechtigung für die App.

    • Sie werden wie die App selbst ausgeführt.

Ausgabe

Die Funktion gibt die folgenden Spalten zurück:

Spaltenname

Datentyp

Beschreibung

TYPE

VARCHAR

Der Callback-Typ, wie in der Manifest-Datei definiert.

EXECUTION_MODE

VARCHAR

Der Ausführungsmodus des Callbacks. Mögliche Werte sind: SYNC, ASYNC.

APPLICATION_NAME

VARCHAR

Der Name der App, die den Callback definiert.

STATE

VARCHAR

Der Status der Callback-Ausführung. Siehe Callback-Status.

STARTED_ON

TIMESTAMP_LTZ

Der Zeitstempel, an dem der Callback aufgerufen wurde.

COMPLETED_ON

TIMESTAMP_LTZ

Der Zeitstempel für die Fertigstellung. NULL, wenn der Callback noch nicht abgeschlossen ist.

TRIGGERING_QUERY_ID

VARCHAR

Die Abfrage-ID der SQL-Anweisung, die den Callback ausgelöst hat. NULL, wenn der Callback nicht durch eine SQL-Abfrage (z. B. wenn sie nach Abschluss eines Upgrades ausgelöst wird) ausgelöst wurde.

QUERY_ID

VARCHAR

Die Abfrage-ID der Ausführung der Callback-Prozedur. NULL, wenn der Callback noch nicht abgeschlossen ist.

QUERY_TEXT

VARCHAR

Der SQL-Text des Prozeduraufrufs. NULL, wenn der Callback noch nicht abgeschlossen ist. Diese Spalte wird ausgeblendet, es sei denn, der Aufrufende ist die App selbst.

ERROR_CODE

VARCHAR

Der Fehlercode. NULL, es sei denn, der STATE ist FAILED oder ABORTED.

ERROR_MESSAGE

VARCHAR

Die Fehlermeldung. NULL, es sei denn, der STATE ist FAILED oder ABORTED. Diese Spalte wird ausgeblendet, es sei denn, der Aufrufende ist die App selbst.

Callback-Status

Die folgende Tabelle beschreibt die möglichen Werte für die Spalte STATE:

Status

Gilt für:

Beschreibung

QUEUED

Nur asynchron

Der Callback wartet darauf, geplant zu werden.

SCHEDULED

Nur asynchron

Der Callback wurde geplant und wartet darauf, ausgeführt zu werden.

EXECUTING

Asynchron/Synchron

Die Callback-Prozedur wird gerade ausgeführt.

COMPLETED

Asynchron/Synchron

Die Callback-Prozedur wurde erfolgreich abgeschlossen.

FAILED

Asynchron/Synchron

Fehlgeschlagene Validierung der Callback-Prozedur (z. B. falsche Signatur) oder fehlgeschlagene Ausführung der Callback-Prozedur.

ABORTED

Nur asynchron

Es ist ein interner Planungsfehler aufgetreten. Dieser Zustand erfordert ein Eingreifen des Supports.

Beispiele

Abrufen des Callback-Verlaufs für eine bestimmte Anwendung:

SELECT *
FROM TABLE(
    INFORMATION_SCHEMA.APPLICATION_CALLBACK_HISTORY(
        APPLICATION_NAME => 'my_app'));

Abrufen des Callback-Verlaufs für einen bestimmten Callback-Typ mit einem kundenspezifischen Limit:

SELECT *
FROM TABLE(
    INFORMATION_SCHEMA.APPLICATION_CALLBACK_HISTORY(
        APPLICATION_NAME => 'my_app',
        CALLBACK_TYPE => 'after_configuration_change',
        LIMIT => 100));