Pub/Sub-Trigger

In Cloud Functions ermöglicht ein Pub/Sub-Trigger eine Funktion, die als Antwort auf Pub/Sub-Nachrichten aufgerufen wird. Geben Sie auch ein Pub/Sub-Thema an, wenn Sie einen Pub/Sub-Trigger für eine Funktion angeben. Die Funktion wird aufgerufen, wenn eine Nachricht zum angegebenen Thema veröffentlicht wird.

Damit eine Funktion einen Pub/Sub-Trigger verwenden kann, muss sie als eine ereignisgesteuerte Funktion implementiert werden:

Das Repository Google Events enthält zusätzliche Ressourcen für die Arbeit mit Ereignisdaten.

Deployment

Sie können einen Pub/Sub-Trigger angeben, wenn Sie eine Funktion bereitstellen. Allgemeine Anleitungen zum Bereitstellen einer Funktion finden Sie unter Cloud Functions-Funktion bereitstellen. In diesem Abschnitt finden Sie zusätzliche Informationen zum Konfigurieren von Pub/Sub-Triggern während der Bereitstellung.

gcloud

Wenn Sie die gcloud CLI bereitstellen, werden die folgenden Flags zum Konfigurieren von Pub/Sub-Triggern verwendet:

gcloud functions deploy YOUR_FUNCTION_NAME \
--trigger-topic=YOUR_PUBSUB_TOPIC \
[--retry] \
...
  • Das Flag --trigger-topic gibt das Pub/Sub-Thema an, das der Trigger überwacht. Nachrichten, die zu diesem Thema veröffentlicht wurden, lösen Aufrufe Ihrer Funktion aus.
  • Mit dem Flag --retry wird gesteuert, ob fehlgeschlagene Funktionsaufrufe automatisch wiederholt werden. Weitere Informationen finden Sie unter Ereignisgesteuerte Funktionen wiederholen.

Legacy-Pub/Sub-Ereignisse

Für Legacy-Funktionen in Cloud Functions (1. Generation) wird für Pub/Sub-Trigger ein anderer Ereignistyp verwendet:

gcloud functions deploy YOUR_FUNCTION_NAME \
--trigger-event=providers/cloud.pubsub/eventTypes/topic.publish \
--trigger-resource=YOUR_PUBSUB_TOPIC \
...

Dieser Ereignistyp wird für Legacy-Funktionen unterstützt, die diese Ereignisse bereits verwenden. Wir empfehlen jedoch, das Flag --trigger-topic zu verwenden, da der Legacy-Ereignistyp möglicherweise später entfernt wird.

Console

Wenn Sie die Bereitstellung mit der Google Cloud Console durchführen, können Sie einen Pub/Sub-Trigger im Abschnitt Trigger konfigurieren.

  • Für Cloud Functions (2. Generation):

    1. Wählen Sie im Feld Triggertyp die Option Cloud Pub/Sub aus.
    2. Wählen Sie im Feld Cloud Pub/Sub-Thema ein Thema aus, das der Trigger überwachen soll. Nachrichten, die zu diesem Thema veröffentlicht wurden, lösen Aufrufe an Ihre Funktion aus.
    3. Aktivieren oder deaktivieren Sie das Kästchen Bei Fehler noch einmal versuchen, um zu bestimmen, ob Cloud Functions einen fehlgeschlagenen Funktionsaufruf automatisch wiederholt. Weitere Informationen finden Sie unter Ereignisgesteuerte Funktionen wiederholen.
    4. Klicken Sie auf Weitere Optionen, um auf dem Trigger eine zusätzliche Konfiguration vorzunehmen:

      • Geben Sie im Feld Triggertyp eine der Optionen Google-Quellen, Benutzerdefiniert oder Drittanbieter an:

        • Mit Google-Quellen können Sie Trigger für Pub/Sub, Cloud Storage, Firestore und andere Google-Ereignisanbieter angeben.Im Bereich Eventarc-Trigger verwenden Sie das Feld Ereignisanbieter, um das Produkt auszuwählen, das den Ereignistyp angibt, mit dem Sie die Funktion auslösen möchten. Wählen Sie dann im Feld Ereignis das Ereignis aus, das Sie als Trigger verwenden möchten.

        • Mit der Option Benutzerdefiniert können Sie Ereignisse aus Ihrem Anwendungscode erstellen und verarbeiten. Folgen Sie den Eingabeaufforderungen im Bereich Eventarc-Trigger, um einen Kanal zu erstellen. Ein Kanal ist eine Ressource, die als Pipeline verwendet wird, um benutzerdefinierte Ereignisse von Erstellern an Nutzer bereitzustellen. Benutzerdefinierte Ereignisse werden in einem Kanal veröffentlicht und ein Eventarc-Trigger abonniert diese Ereignisse.

        • Die Option Drittanbieter ermöglicht die Einbindung in Nicht-Google-Anbieter, die eine Eventarc-Quelle anbieten. Weitere Informationen finden Sie unter Drittanbieterereignisse in Eventarc.

      • Wählen Sie im Feld Ereignis ein auslösendes Ereignis aus. Der Standardwert ist google.cloud.pubsub.topic.v1.messagePublished.

      • Wählen Sie optional im Feld Dienstkonto ein Dienstkonto aus, das als Identität des Eventarc-Triggers verwendet werden soll. Weitere Informationen finden Sie unter Triggeridentität.

    5. Klicken Sie auf Trigger speichern.

  • Für Cloud Functions (1. Generation):

    1. Wählen Sie im Feld Triggertyp die Option Cloud Pub/Sub aus.
    2. Wählen Sie im Feld Cloud Pub/Sub-Thema auswählen ein Thema aus, das der Trigger überwachen soll, oder wählen Sie Thema erstellen aus, um ein Fenster zu öffnen und ein neues Thema zu erstellen. Wenn eine Nachricht im Thema Ihrer Funktion veröffentlicht wird, wird ein Aufruf Ihrer Funktion ausgelöst.
    3. Aktivieren oder deaktivieren Sie das Kästchen Bei Fehler noch einmal versuchen, um zu steuern, ob fehlgeschlagene Funktionsaufrufe automatisch wiederholt werden. Weitere Informationen finden Sie unter Ereignisgesteuerte Funktionen wiederholen.

Weitere Informationen