Kategorien:

Information Schema, Tabellenfunktionen

ALERT_HISTORY

Mit dieser INFORMATION_SCHEMA-Tabellenfunktion kann der Verlauf der Alerts innerhalb eines bestimmten Datumsbereichs abgefragt werden. Die Funktion gibt den Verlauf der Alerts für Ihr gesamtes Snowflake-Konto oder für einen bestimmte Alert zurück.

Sie können auf diese Informationen auch über die Ansicht ALERT_HISTORY des ACCOUNT_USAGE-Schemas zugreifen. Weitere Informationen zu den Unterschieden zwischen Ansicht und Tabellenfunktion finden Sie unter Unterschiede zwischen Account Usage und Information Schema.

Bemerkung

Diese Funktion gibt die Alert-Ausführungen der letzten 7 Tage oder die nächste geplante Ausführung innerhalb der nächsten 8 Tage zurück.

Syntax

ALERT_HISTORY(
      [ SCHEDULED_TIME_RANGE_START => <constant_expr> ]
      [, SCHEDULED_TIME_RANGE_END => <constant_expr> ]
      [, RESULT_LIMIT => <integer> ]
      [, ALERT_NAME => '<string>' ] )
Copy

Argumente

Alle Argumente sind optional.

SCHEDULED_TIME_RANGE_START => constant_expr, . SCHEDULED_TIME_RANGE_END => constant_expr

Zeitbereich (im TIMESTAMP_LTZ-Format) innerhalb der letzten 7 Tage, in dem die Auswertung der Bedingung für den Alert geplant war.

  • Wenn SCHEDULED_TIME_RANGE_END nicht angegeben ist, gibt die Funktion die Alerts zurück, die bereits abgeschlossen wurden, die gerade ausgeführt werden und die in Zukunft geplant sind.

  • Wenn SCHEDULED_TIME_RANGE_END den Wert CURRENT_TIMESTAMP hat, gibt die Funktion die Alerts zurück, die bereits abgeschlossen wurden und die gerade ausgeführt werden. Beachten Sie, dass ein Alert, der unmittelbar vor dem aktuellen Zeitpunkt gestartet wurde, möglicherweise noch als geplant identifiziert wird.

Bemerkung

Wenn keine Start- oder Endzeit angegeben ist, werden die letzten Alerts bis zum angegebenen RESULT_LIMIT-Wert zurückgegeben.

Wenn der Zeitbereich nicht in den letzten 7 Tagen liegt, wird ein Fehler zurückgegeben.

RESULT_LIMIT => integer

Eine Zahl, die die maximale Anzahl von Zeilen angibt, die von der Funktion zurückgegeben werden.

Wenn die Anzahl der übereinstimmenden Zeilen größer ist als dieser Grenzwert, werden die Alert-Ausführungen sortiert nach Zeitstempel (neuester zuerst) bis zum angegebenen Grenzwert zurückgegeben.

Bereich: 1 bis 10000

Standard: 100.

ALERT_NAME => string

Eine Zeichenfolge, bei der die Groß-/Kleinschreibung nicht berücksichtigt wird und die einen Alert angibt. Es werden nur nicht qualifizierte Alert-Namen unterstützt. Es werden nur Ausführungen des angegebenen Alerts zurückgegeben. Wenn mehrere Alerts denselben Namen haben, gibt die Funktion den Verlauf für jeden dieser Alerts zurück.

Nutzungshinweise

  • Gibt nur Ergebnisse für die Rolle ACCOUNTADMIN oder den Eigentümer des Alerts zurück (d. h. die Rolle mit der Berechtigung OWNERSHIP für den Alert).

  • Diese Funktion gibt maximal 10.000 Zeilen zurück. Der Wert wird im Argument RESULT_LIMIT festgelegt. Der Standardwert ist 100.

    Beachten Sie, dass bei der Abfrage der Funktion ALERT_HISTORY die Argumente Alert-Name, Zeitbereich und Ergebnislimit zuerst angewendet werden und erst danach, falls angegeben, die Klauseln WHERE und LIMIT. Darüber hinaus gibt die Funktion ALERT_HISTORY Datensätze in absteigender Reihenfolge gemäß SCHEDULED_TIME-Wert zurück. Abgeschlossene Alerts (d. h. mit Status SUCCEEDED, FAILED oder CANCELLED) werden in der Regel früher geplant, sodass sie in der Regel später in der Reihenfolge der Suchergebnisse zurückgegeben werden.

    Wenn in der Praxis viele Alerts in Ihrem Konto ausgeführt werden, könnten die von der Funktion zurückgegebenen Ergebnisse weniger abgeschlossene Alerts als erwartet oder nur geplante Alerts enthalten, insbesondere wenn der RESULT_LIMIT-Wert relativ niedrig ist. Zur Abfrage des Verlaufs von bereits ausgeführten Alerts empfiehlt Snowflake eine Kombination der Argumente SCHEDULED_TIME_RANGE_START => constant_expr und/oder SCHEDULED_TIME_RANGE_END => constant_expr.

  • 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.

  • Diese Funktion kann alle Ausführungen zurückgeben, die in den letzten 7 Tagen ausgeführt wurden, oder die nächste geplante Ausführung innerhalb der nächsten 8 Tage.

Ausgabe

Mit der Tabellenfunktion ALERT_HISTORY wird eine Zeile für jede Alert-Ausführung erstellt. Jede Zeile enthält die folgenden Spalten:

Spaltenname

Datentyp

Beschreibung

NAME

TEXT

Name des Alerts.

DATABASE_NAME

TEXT

Name der Datenbank, die den Alert enthält.

SCHEMA_NAME

TEXT

Name des Schemas, das den Alert enthält.

CONDITION

TEXT

Der Text der SQL-Anweisung, die als Bedingung für den Alert dient.

CONDITION_QUERY_ID

TEXT

Interner/systemgenerierter Bezeichner für die SQL-Anweisung, die als Bedingung des Alerts ausgeführt wird.

ACTION

TEXT

Text der SQL-Anweisung, die als Aktion des Alerts dient.

ACTION_QUERY_ID

TEXT

Interner/systemgenerierter Bezeichner für die SQL-Anweisung, die als Aktion des Alerts ausgeführt wird.

STATE

TEXT

Status des Alerts. Dies kann einer der folgenden Werte sein:

  • SCHEDULED: Der Alert wird zu dem in der Spalte SCHEDULED_TIME angegebenen Zeitpunkt ausgeführt.

  • EXECUTING: Die Bedingung oder Aktion des Alerts wird gerade ausgeführt.

  • FAILED: Der Alert ist fehlgeschlagen. Entweder wurde von der Alert-Bedingung oder von der Alert-Aktion ein Fehler festgestellt, der die Ausführung verhindert hat.

  • CANCELLED: Die Alert-Ausführung wurde abgebrochen (z. B. wenn der Alert unterbrochen wurde).

  • CONDITION_FALSE: Die Bedingung wurde zwar erfolgreich ausgewertet, hat aber keine Daten zurückgegeben. Infolgedessen wurde die Aktion nicht ausgeführt.

  • CONDITION_FAILED: Die Auswertung der Bedingung ist fehlgeschlagen. Einzelheiten zum Fehler finden Sie in den Spalten SQL_ERROR_CODE und SQL_ERROR_MESSAGE.

  • ACTION_FAILED: Die Bedingung wurde erfolgreich ausgewertet, aber die Ausführung der Aktion ist fehlgeschlagen. Einzelheiten zum Fehler finden Sie in den Spalten SQL_ERROR_CODE und SQL_ERROR_MESSAGE.

  • TRIGGERED: Die Bedingung wurde erfolgreich ausgewertet, und die Aktion wurde erfolgreich ausgeführt.

SQL_ERROR_CODE

NUMBER

Fehlercode, wenn der Alert einen Fehler zurückgegeben hat oder nicht ausgeführt werden konnte (z. B. weil der aktuelle Benutzer keine Berechtigungen zum Ausführen des Alerts hatte).

SQL_ERROR_MESSAGE

VARCHAR

Fehlermeldung, wenn der Alert einen Fehler zurückgegeben hat.

SCHEDULED_TIME

TIMESTAMP_LTZ

Zeitpunkt, zu dem der Start des Alerts geplant ist/war.

Beachten Sie, dass wir uns nach besten Kräften um absolute Präzision bemühen, aber nur garantieren, dass Alerts nicht vor der geplanten Zeit ausgeführt werden.

COMPLETED_TIME

TIMESTAMP_LTZ

Zeitpunkt, zu dem der Alert abgeschlossen wurde, oder NULL, wenn SCHEDULED_TIME in der Zukunft liegt oder sich der Alert noch in Ausführung befindet.