Erstellen einer Benachrichtigungsintegration zum Senden von Benachrichtigungen an ein Google Cloud Pub/Sub-Thema¶
Um Benachrichtigungen an ein Google Cloud Pub/Sub-Thema zu senden, müssen Sie eine Benachrichtigungsintegration für dieses Thema erstellen. Gehen Sie dabei wie folgt vor:
Bemerkung
Dieses Feature ist derzeit auf Snowflake-Konten beschränkt, die auf Google Cloud Platform (GCP) gehostet werden.
Pub/Sub-Themen erstellen¶
Erstellen Sie ein Pub/Sub-Thema, das Fehlerbenachrichtigungsmeldungen von Snowflake empfangen kann, oder verwenden Sie ein vorhandenes Thema. Sie können das Thema mit Cloud Shell oder Cloud SDK erstellen. Weitere Informationen dazu finden Sie in der Pub/Sub-Dokumentation unter Themen erstellen und verwenden.
Führen Sie zum Beispiel den folgenden Befehl aus, um ein leeres Thema zu erstellen:
gsutil notification create -t <topic>
Wenn das Thema bereits vorhanden ist, wird es vom Befehl verwendet. Andernfalls wird ein neues Thema erstellt.
Pub/Sub-Abonnement erstellen¶
Erstellen Sie optional ein Abonnement für das Pub/Sub-Thema, um Benachrichtigungen abrufen zu können. Sie können ein Abonnement mit Pull-Bereitstellung für das Pub/Sub-Thema über die Cloud Console, das Befehlszeilentool gcloud
oder die Cloud Pub/Sub-API erstellen. Anweisungen finden Sie unter Verwalten von Themen und Abonnements in der Pub/Sub-Dokumentation.
Erstellen Sie eine Benachrichtigungsintegration in Snowflake.¶
Führen Sie den Befehl CREATE NOTIFICATION INTEGRATION aus, um eine Benachrichtigungsintegration zu erstellen. Eine Integration ist ein Snowflake-Objekt, das auf das von Ihnen erstellte Pub/Sub-Thema verweist.
Snowflake verknüpft die Benachrichtigungsintegration mit einem Google Cloud Platform (GCP)-Dienstkonto, das für Ihr Konto erstellt wurde. Snowflake erstellt ein einziges Dienstkonto, auf das von allen GCP-Speicherintegrationen in Ihrem Snowflake-Konto verwiesen wird. Das GCP-Dienstkonto für Benachrichtigungsintegrationen unterscheidet sich von dem Dienstkonto, das für Speicherintegrationen erstellt wird.
Wenn Sie den Befehl ausführen, setzen Sie GCP_PUBSUB_TOPIC_NAME auf den Namen des Themas , das Sie zuvor erstellt haben.
Beispiel:
CREATE NOTIFICATION INTEGRATION my_notification_int
ENABLED = TRUE
DIRECTION = OUTBOUND
TYPE = QUEUE
NOTIFICATION_PROVIDER = GCP_PUBSUB
GCP_PUBSUB_TOPIC_NAME = 'projects/sdm-prod/topics/mytopic';
Gewähren Sie Snowflake Zugriff auf das Pub/Sub-Abonnement.¶
Führen Sie den Befehl DESCRIBE INTEGRATION aus, um die Eigenschaften der Benachrichtigungsintegration anzuzeigen, die Sie gerade erstellt haben.
So zeigen Sie beispielsweise die Eigenschaften der Benachrichtigungsintegration namens
my_notification_int
an:DESC NOTIFICATION INTEGRATION my_notification_int;
Notieren Sie sich den Wert der Eigenschaft GCP_PUBSUB_SERVICE_ACCOUNT (Name des Dienstkontos), der das folgende Format hat:
<service_account>@<project_id>.iam.gserviceaccount.com
Melden Sie sich bei der Google Cloud Platform Console als Projekteditor an.
Wählen Sie im Startseiten-Dashboard die Option Big Data » Pub/Sub » Subscriptions aus.
Wählen Sie das Abonnement aus, das für den Zugriff konfiguriert werden soll.
Wählen Sie in der rechten oberen Ecke die Option SHOW INFO PANEL aus. Der Informationsbereich für das Abonnement wird erweitert.
Suchen Sie im Feld Add members nach dem Dienstkontonamen, den Sie sich in Schritt 2 notiert haben.
Wählen Sie in der Dropdown-Liste Select a role die Option Pub/Sub Publisher aus.
Wählen Sie Add aus.
Der Name des Dienstkontos wird der Dropdown-Liste Pub/Sub Publisher im Informationsbereich hinzugefügt.