Alerts in Snowsight¶
Sie können Alerts für Snowflake-Funktionen in der Snowsight einrichten. Diese Benutzeroberfläche vereinfacht die Überwachung Ihres Snowflake-Kontos.
Anstatt SQL-Anweisungen zum Erstellen und Verwalten von Alerts auszuführen, können Sie Assistenten in der Snowsight zum Erstellen, Verwalten und Überwachen Ihrer Alerts verwenden.
Die Verwaltungsfunktion für Alerts in Snowsight bietet die folgenden Vorteile:
Zentrale Sichtbarkeit von Alerts: Im Snowflake Alerts Center können Sie alle Alerts, den Verlauf dieser Alerts und den Ausführungsstatus dieser Alerts einsehen.
Vorlagen für das Erstellen von Alerts: Sie können schnell Alerts für die folgenden Features erstellen, indem Sie die Alert-Vorlagen verwenden, die in der Snowflake Alerts-UI bereitgestellt werden. Hinweis: Sobald ein Alert aus einer Vorlage generiert wurde, entspricht dieser in Bezug auf die Lebenszyklusverwaltung jedem anderen Alert und enthält keine speziellen Eigenschaften
Proaktive Überwachung von Snowflake-Features: Sie können ganz einfach Benachrichtigungen für Fehler, Latenz oder Datenanomalien konfigurieren, um sicherzustellen, dass Ihre Pipelines und Budgets funktionieren.
Voraussetzungen¶
Bevor Sie die Snowsight verwenden können, um Alerts zu erstellen, zu überwachen und zu verwalten, müssen Sie die folgenden Voraussetzungen erfüllen:
Voraussetzungen für Aufgaben-Alerts¶
Wenn Sie planen, Alerts für Aufgaben zu erstellen, zu verwalten und zu überwachen, müssen Sie Folgendes tun:
Legen Sie den Schweregrad der protokollierten Meldungen fest, die Sie für Aufgabenereignisse erfassen möchten.
Die Aufgaben-Alerts überwachen Fehlermeldungen, die in der Ereignistabelle protokolliert werden. Sie müssen den Parameter LOG_LEVEL mindestens auf
ERRORfür die Aufgaben einstellen, die Sie überwachen möchten. Sie können diesen Parameter für einen der folgenden Objekttypen festlegen:Um den Schweregrad für alle Objekte im Konto (einschließlich Aufgaben) auf ERROR einzustellen, führen Sie ALTER ACCOUNT SET LOG_LEVEL aus:
Bemerkung
Diese Einstellung wirkt sich auch auf die von UDFs protokollierten Meldungen, gespeicherte Prozeduren und dynamische Tabellen aus.
Um den Schweregrad für alle Objekte in einer Datenbank, welche die Aufgaben enthält, auf ERROR einzustellen, führen Sie ALTER DATABASE SET LOG_LEVEL aus:
Bemerkung
Diese Einstellung wirkt sich auch auf die von UDFs protokollierten Meldungen, gespeicherte Prozeduren und dynamische Tabellen in dieser Datenbank aus.
Um den Schweregrad für bestimmte Aufgaben auf ERROR einzustellen, führen Sie ALTER TASK … SET LOG_LEVEL aus:
Überprüfen Sie die Berechtigungen, die der Rolle erteilt wurden, mit der Sie auf die Snowsight zugreifen möchten.
Dieser Rolle muss die Berechtigung zur Abfrage von Ansicht TASK_HISTORY und Ansicht QUERY_HISTORY im Schema ACCOUNT_USAGE erteilt worden sein.
Weitere Informationen dazu finden Sie unter Ermöglicht anderen Rollen die Verwendung von Schemas in der SNOWFLAKE-Datenbank..
Voraussetzungen für Openflow-Alerts¶
Die Openflow-Alerts überwachen Ereignisse, die in einer Ereignistabelle erfasst werden. Stellen Sie sicher, dass Openflow so konfiguriert ist, dass es Ereignisse protokolliert. Weitere Informationen finden Sie in den folgenden Abschnitten:
Einrichten einer Ereignistabelle zum Protokollieren von Openflow-Ereignissen (erforderlich) (wenn Sie Openflow BYOC verwenden)
[Optional] Konfigurieren Sie eine Openflow-spezifische Ereignistabelle (wenn Sie Openflow Snowflake verwenden)
Voraussetzungen für Datenqualitäts-Alerts¶
Stellen Sie sicher, dass Datenmetrikfunktionen (DMF) registriert sind und für die Tabellen und Ansichten ausgeführt werden, die Sie überwachen möchten.
Weitere Informationen dazu finden Sie unter Verwenden von SQL zum Einrichten von Datenmetrikfunktionen.
Benachrichtigungen für Alerts einrichten¶
Wenn Sie einen Alert in der Snowsight erstellen, können Sie den Alert so konfigurieren, dass er eine Benachrichtigung per E-Mail oder über einen Webhook sendet.
Um Benachrichtigungen zu versenden, müssen Sie eine Benachrichtigungsintegration verwenden. Sie können entweder eine bestehende Benachrichtigungsintegration verwenden oder eine neue erstellen:
Um bestehende Benachrichtigungsintegrationen zu finden, führen Sie SHOW NOTIFICATION INTEGRATIONS aus und verwenden den Pipe-Operator, um die Ergebnisse zu filtern:
Informationen zum Erstellen einer neuen E-Mail-Benachrichtigungsintegration finden Sie unter Senden von E-Mail-Benachrichtigungen.
Informationen zum Erstellen einer neuen Webhook-Benachrichtigungsintegration finden Sie unter CREATE NOTIFICATION INTEGRATION (Webhooks).
Erstellen einer Rolle für den Zugriff auf Alerts in Snowsight¶
Um anderen Benutzern als dem Kontoadministrator den Zugriff auf Benachrichtigungen in der Snowsight zu ermöglichen, können Sie eine kundenspezifische Rolle erstellen, die über alle Berechtigungen verfügt, die zum Erstellen, Verwalten und Überwachen von Alerts erforderlich sind. Sie können diese Rolle Benutzern und anderen Rollen zuweisen, die Alerts in der Snowsight verwenden müssen.
Beispiel: Sie möchten eine Rolle mit dem Namen my_alert_center_role für diesen Zweck erstellen. Um diese Rolle zu erstellen, führen Sie die folgenden Schritte aus:
Wechseln Sie zu einer Rolle, die Ihre kundenspezifische Rolle erstellen darf (z. B. ACCOUNTADMIN-Rolle):
Erstellen Sie Ihre kundenspezifische Rolle:
Gewähren Sie die USAGE-Berechtigung für ein Warehouse, das Sie für den Zugriff auf Alerts in der Snowsight verwenden möchten. Sie müssen diese Berechtigung erteilen, da einige der Features ein aktives Warehouse erfordern.
Erteilen Sie der Rolle die Berechtigungen für das Ausführen von Alerts:
Wenn Sie planen, Alerts zu erstellen, die ein bestimmtes Warehouse zur Ausführung verwenden, erteilen Sie dieser Rolle die folgenden Berechtigungen:
EXECUTE ALERT-Berechtigung für das Konto
USAGE-Berechtigung für das Warehouse, das Sie für den Alert verwenden möchten
Beispiel:
Wenn Sie planen, einen serverlosen Alert zu erstellen, gewähren Sie die EXECUTE MANAGED ALERT-Berechtigung für das Konto:
Gewähren Sie die Berechtigungen, die zum Erstellen von Alerts in einer Datenbank und einem Schema erforderlich sind.
Beispiel: Wenn Sie planen, die Alerts in einer Datenbank namens
my_alerts_databaseund in einem Schema namensmy_alert_schemazu erstellen, gewähren Sie die USAGE-Berechtigung für diese Datenbank und dieses Schema, und erteilen Sie die CREATE ALERT-Berechtigung für das Schema:Gewähren Sie die USAGE-Berechtigung für die Integration von E-Mail-Benachrichtigungen, die Sie zuvor eingerichtet haben:
Weisen Sie die Anwendungsrolle zu, die den Zugriff auf die Standard-Ereignistabelle ermöglicht :
Wenn Sie planen, Alerts zur Überwachung der Datenqualität einzurichten, weisen Sie die Anwendungsrolle und die Berechtigungen zu, die für die Überwachung der Datenqualität und das Ausführen von Datenmetrikfunktionen erforderlich sind:
Weisen Sie die kundenspezifische Rolle Benutzern oder anderen Rollen zu:
Zugriff auf Alerts über Snowsight¶
So greifen Sie in der Snowsight auf die Alerts zu:
Melden Sie sich bei Snowsight an.
Wählen Sie im Navigationsmenü die Option Monitoring » Alerts aus.
Sie können eine Liste der bestehenden Alerts anzeigen und die Alerts nach Alert-Name und Status filtern. Sie können auch den Status der letzten Ausführungen von Alerts anzeigen.
Erstellen eines neuen Alerts¶
Sie können einen neuen Alert erstellen, indem Sie eine der bereitgestellten Vorlagen verwenden. Führen Sie die folgenden Schritte aus, um einen Alert zu erstellen:
Melden Sie sich bei Snowsight an.
Wählen Sie im Navigationsmenü die Option Monitoring » Alerts aus, und wählen Sie dann + Alert aus.
Geben Sie im Feld Name einen Namen für den Alert ein.
Beschreiben Sie den Zweck des Alerts im Feld Description.
Wählen Sie im Menü Location die Datenbank und das Schema aus, in dem Sie den Alert erstellen möchten.
Wählen Sie im Menü Compute Type eine der folgenden Optionen aus:
Um einen serverlosen Alert zu erstellen, wählen Sie Serverless aus.
Um das Warehouse anzugeben, das Sie für den Alert verwenden möchten, wählen Sie Warehouse aus.
Wenn Sie diese Option ausgewählt haben, wählen Sie im Menü Warehouse das Warehouse aus.
Wenn Sie den Alert aktivieren möchten, nachdem er erstellt wurde, legen Sie Activate alert upon creation fest.
Wenn Sie diese Option nicht auswählen, bleibt der neu erstellte Alert ausgesetzt. Sie müssen den Alert fortsetzen, damit der Alert aktiviert wird.
Wählen Sie Next aus.
Wählen Sie im Menü Select warehouse das Warehouse aus, das Sie für den Alert verwenden möchten.
Wählen Sie im Menü Alert template eine der Vorlagengruppen für Snowflake-Features aus, und wählen Sie die Vorlage aus, die Sie zum Erstellen des Alerts verwenden möchten.
In der folgenden Tabelle sind die Vorlagengruppen und Vorlagen aufgeführt, die Sie auswählen können.
Vorlagengruppe
Vorlage
Beschreibung
DATA_QUALITY
Anomaly detection alert
Überwacht Anomalien, die in Datenqualitätsmetriken erkannt wurden, und löst einen Alert aus, wenn ungewöhnliche Muster oder Ausreißer identifiziert werden.
Expectation violations alert
Überwacht auf Verstöße gegen Datenqualitätserwartungen, und löst einen Alert aus, wenn definierte Erwartungen nicht erfüllt werden.
OPENFLOW
High CPU alert
Überwacht Openflow-Laufzeit-Pods auf anhaltend hohe CPU-Nutzung (> 90 %), was auf eine mögliche Beeinträchtigung der Leistung hinweisen kann.
Connector backpressure (object count)
Überwacht die Anzahl der Konnektorwarteschlangen, um festzustellen, ob sie den Schwellenwert für den Backpressure-Schwellenwert überschreiten, was darauf hinweisen kann, dass das nachgelagerte System nicht mit der Datenflussrate mithalten kann.
Connector backpressure (bytes)
Überwacht die Bytes in der Warteschlange des Konnektors, um festzustellen, ob der Backpressure-Schwellenwert überschritten wurde, was darauf hinweisen kann, dass in der Datenpipeline eine Überlastung des Arbeitsspeichers vorliegt.
High queued bytes alert
Überwacht die Bytes der Konnektorwarteschlange, um festzustellen, ob sie sich dem Schwellenwert für Backpressure (> 80 %) nähern, was eine Frühwarnung sein kann, bevor ein Rückstau auftritt.
High queued count alert
Überwacht die Anzahl der Objekte in der Konnektorwarteschlange, um festzustellen, ob sie sich dem Backpressure-Schwellenwert (> 80 %) nähern, was eine Frühwarnung sein kann, bevor ein Rückstau auftritt.
No data alert
Überwacht Konnektoren, die eine aktive Verarbeitungszeit haben, aber keine Daten empfangen oder senden, was auf mögliche Probleme mit dem Datenfluss hinweisen kann.
Runtime high error rate alert
Überwacht die Openflow-Laufzeitprozessoren auf ein hohes Volumen von ERROR-Protokolleinträgen, die auf Verarbeitungsfehler hinweisen können.
Table replication failure alert
Überwacht den Übergang der Tabellenreplikation zu einem FAILED-Status, was auf kritische Probleme bei der Datensynchronisierung hinweisen kann.
TASKS
Error rate alert
Löst einen Alert aus, wenn die kumulative Aufgabenfehlerrate einen bestimmten Schwellenwert überschreitet.
Füllen Sie die Konfigurationsfelder für den Alert aus. Die Felder hängen von der von Ihnen gewählten Vorlage ab.
Wählen Sie den Bereich aus, den Sie überwachen möchten. Der Geltungsbereich bestimmt die Objekte, die für den Alert überwacht werden. Um beispielsweise alle Objekte im Konto zu überwachen, wählen Sie Account im Menü Scope aus.
Wählen Sie im Menü Schedule den Typ des Zeitplans aus, der für die Ausführung des Alerts verwendet werden soll:
Um den Alert nur auszuführen, wenn neue Objekte hinzugefügt werden (z. B. neue Zeilen, die in eine von Ihnen überwachte Tabelle eingefügt werden), wählen Sie When new events are detected aus.
Um den Alert nach einem regelmäßigen Zeitplan auszuführen und die Häufigkeit für die Ausführung des Alerts auszuwählen (z. B. alle 10 Minuten), wählen Sie On a schedule aus.
Wählen Sie im Menü Notification integration die Benachrichtigungsintegration, die Sie zuvor erstellt haben aus. Sie können eine E-Mail-Integration oder eine Webhook-Integration verwenden.
Wenn Sie eine E-Mail-Integration ausgewählt haben, wählen Sie im Menü Email recipients die E-Mail-Adressen der Personen aus, die benachrichtigt werden sollen, wenn der Alert ausgelöst wird.
Wählen Sie Create aus.
Bemerkung
Der Vorlagenassistent erzeugt dieSQL-Anweisungen zum Erstellen des Alerts. Wenn Sie den Alert weiter anpassen möchten, können Sie diese Anweisungen direkt ändern.
Der Alert ist nur sichtbar, wenn Ihre aktuelle Rolle die MONITOR- oderOWNERSHIP-Berechtigung für den Alert hat.
Anzeigen der Details eines Alerts¶
Um die Details eines bestimmten Alerts anzuzeigen, wählen Sie in der Alert-Liste die Zeile des Alerts aus. Snowsight öffnet die Seite mit den Alert-Details, auf der die folgenden Informationen angezeigt werden:
Aktueller Ausführungsverlauf: Eine Tabelle der letzten Ausführungen des Alerts, einschließlich Fertigstellungszeit, Status (z. B. Triggered oder:ui:
Condition not met), Bedingung und ausgeführtes Aktions-SQL sowie die zugehörigen Abfrage-IDs. Sie können nach Zeitbereich und Status filtern und weitere Ausführungen laden.Beschreibung: Der Kommentar oder die Beschreibung, die für den Alert festgelegt wurden.
Details: Metadaten zum Alert, einschließlich Alert-Name, Status (gestartet oder ausgesetzt), Eigentümerrolle, Datenbank, Schema, Warehouse und Zeitplan.
Bedingung: Die SQL-Anweisung, die die Bedingung für den Alert enthält. Dies ist der
IF(EXISTS(...))-Block des Alerts.Aktion: Die SQL-Anweisung, die der Alert ausführt, wenn die Bedingung erfüllt ist. Dies ist der
THEN-Block des Alerts.
Überwachen der Ausführung von Alerts¶
In der Tabelle mit dem aktuellen Ausführungsverlauf auf der Alert-Detailseite zeigt die Spalte Status den Status jeder Ausführung. Folgende Status sind möglich:
Triggered: Die Bedingung wurde als TRUE ausgewertet und die Aktion wurde ausgeführt.
Condition not met: Die Bedingung wurde als FALSE ausgewertet und es wurde keine Aktion ausgeführt.
Eine vollständige Liste der möglichen Status und ihrer Bedeutungen finden Sie in der Spalte STATE in:doc:ALERT_HISTORY</sql-reference/functions/alert_history>.
Um eine fehlgeschlagene Ausführung zu untersuchen, überprüfen Sie die Spalten Condition query ID und Action query ID. Sie können diese Abfrage-IDs verwenden, um SQL_ERROR_CODE und SQL_ERROR_MESSAGE für die Ausführung in ALERT_HISTORY zu suchen, mit dem spezifischen Fehlercode und einer Beschreibung des Problems.
Bearbeiten eines Alerts¶
Um einen Alert auf der Alert-Detailseite zu bearbeiten, wählen Sie
in der rechten oberen Ecke aus und wählen dann Edit. Snowsight öffnet das Bearbeitungsdialogfeld mit zwei Registerkarten: General und Config.
Bearbeiten der allgemeinen Alert-Eigenschaften¶
Auf der Registerkarte General können Sie die folgenden Eigenschaften des Alerts ändern:
Name: Name des Alerts. Dieses Feld ist bei bestehenden Alerts schreibgeschützt.
Kommentar: Eine Beschreibung, was der Alert überwacht. Diese wird der Eigenschaft COMMENT in ALTER ALERT zugeordnet.
Computetyp: Ob der Alert ein serverloses Computemodell oder ein bestimmtes Warehouse verwendet. Wenn Sie Warehouse verwenden, wählen Sie das Warehouse im Menü Warehouse aus.
Zeitplan: Wie oft der Alert ausgeführt wird. Wählen Sie On a schedule aus und legen Sie die Häufigkeit fest (z. B. alle 30 Minuten).
Wählen Sie Save aus, um die Änderungen zu übernehmen.
Bearbeiten der Konfiguration eines Alerts¶
Auf der Registerkarte Config können Sie die Konfiguration (CONFIG) des Alerts bearbeiten. Wenn ein Alert aus einer Vorlage erstellt wird, legt die Vorlage eine Konfiguration fest, welche die einstellbaren Parameter für den Alert enthält (z. B. Schwellenwerte, Benachrichtigungsziele und Überwachungsbereich). Die Bedingung und die Aktions-SQL des Alerts lesen diese Werte zur Laufzeit über SYSTEM$GET_ALERT_CONFIG.
Durch die Bearbeitung der Konfiguration können Sie die Geschäftslogik des Alerts ändern, ohne die zugrunde liegenden SQL-Anweisungen zu ändern.
Abhängig von der Struktur der Konfiguration zeigt Snowsight eine von zwei Bearbeitungserfahrungen an.
Bearbeiten einer Vorlagenkonfiguration¶
Wenn der Alert aus einer Vorlage erstellt wurde und die Konfiguration die Struktur beibehält, die von der Vorlage erwartet wird, zeigt Snowsight ein umfangreiches Bearbeitungsformular an. Jedes Feld in der Konfiguration wird mit einer von Menschen lesbaren Bezeichnung und einer Beschreibung der erwarteten Werte angezeigt. Die spezifischen Felder hängen von der Vorlage ab, aber häufige Beispiele sind:
Ein Schwellenwert, der den Alert auslöst (z. B. eine Fehlerrate zwischen 0,0 und 1,0).
Eine Benachrichtigungsmethode wie EMAIL oder WEBHOOK mit zugehörigen Feldern für die Integration und die Empfänger.
Ein Bereich, der steuert, welche Objekte der Alert überwacht (z. B. ACCOUNT, DATABASE oder SCHEMA), mit optionalen Filtern, um den Bereich weiter einzugrenzen.
Wenn Sie diese Felder ändern und Save auswählen, aktualisiert Snowsight das CONFIG JSON für den Alert. Die Bedingung und die Aktions-SQL des Alerts verwenden dann die neuen Werte, wenn der Alert das nächste Mal ausgeführt wird.
Bearbeiten einer vereinfachten Schlüssel-Wert-Konfiguration¶
Wenn die Konfiguration nicht mit der Struktur übereinstimmt, die die Vorlage erwartet (z. B. wenn Sie die CONFIG durch SQL angepasst haben und das Schema geändert haben), greift Snowsight auf einen vereinfachten Schlüssel-Wert-Editor zurück.
In dieser Ansicht wird die Konfiguration als Liste von Schlüssel-Wert-Paaren angezeigt. Sie können zwischen zwei Modi wechseln:
Key-value: Bearbeiten Sie jedes Schlüssel-Wert-Paar einzeln.
JSON: Hier können Sie die JSON-Konfigurationsrohdaten direkt anzeigen und bearbeiten.
Vorsicht
Die Konfigurationswerte beeinflussen die Bedingung und die Aktionslogik des Alerts, aber es handelt sich nicht um verwaltete Parameter mit einem umfassenden Abkommen mit Snowflake. CONFIG ist eineJSON-Zeichenfolge, welche die Alert-SQL zur Laufzeit liest, und die Vorlagen-SQL ist für die Interpretation dieser Werte verantwortlich.
Durch das Ändern der Konfigurationswerte wird das Laufzeitverhalten der Alert-SQL geändert. Falsche Werte (z. B. ein nichtnumerischer Wert für einen Schwellenwert oder eine ungültige E-Mail-Adresse) können dazu führen, dass der Alert nicht korrekt funktioniert oder unerwartete Ergebnisse auftreten. Überprüfen Sie die Dokumentation der Vorlage oder die der Alert-SQL, bevor Sie die Konfigurationswerte ändern.
Weitere Informationen, wie der CONFIG-Parameter auf SQL-Ebene funktioniert, finden Sie unter Übergeben der Konfiguration an einen Alert.