Pub/Sub-Trigger (1. Generation)
In Cloud Run 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:
Wenn Sie eine CloudEvent-Funktion verwenden, werden die Pub/Sub-Ereignisdaten an die Funktion im CloudEvents-Format weitergegeben und die CloudEvent-Datennutzlast ist vom Typ
MessagePublishedData
.Wenn Sie eine Hintergrundfunktion verwenden, wird die Nutzlast der Pub/Sub-Ereignisdaten direkt an die Funktion im
PubsubMessage
-Format weitergegeben.
Das Repository Google Events enthält zusätzliche Ressourcen für die Arbeit mit Ereignisdaten.
Bereitstellung
Sie können einen Pub/Sub-Trigger angeben, wenn Sie eine Funktion bereitstellen. Allgemeine Anleitungen zum Bereitstellen einer Funktion finden Sie unter Cloud Run Functions 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 \ --no-gen2 \ --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 alte Funktionen in Cloud Run Functions (1. Generation) wird für Pub/Sub-Trigger ein anderer Ereignistyp verwendet:
gcloud functions deploy YOUR_FUNCTION_NAME \ --no-gen2 \ --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:
- Wählen Sie im Feld Triggertyp die Option Cloud Pub/Sub aus.
- 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 eine Funktion aufgerufen.
- 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.
Nächste Schritte
- Ereignisgesteuerte Funktionen schreiben
- Erfahren Sie mehr über das Bereitstellen einer Cloud Run Functions-Funktion.
- In der Anleitung zu Pub/Sub-Funktionen finden Sie ein Beispiel für das Schreiben, Bereitstellen und Aufrufen einer Funktion mit einem Pub/Sub-Trigger.