Ihr Workflow muss möglicherweise auf einen externen Prozess warten. Sie können HTTP-Rückrufe, die gewartet werden soll, einen anderen Dienst, um eine Anfrage an einen Callback-Endpunkt zu senden. wird diese Anfrage fortgesetzt. die Ausführung des Workflows. Sie können auch Warten mit Abfragen.
In dieser Anleitung wird gezeigt, wie Sie auf Ereignisse warten können, statt Abfragen zu verwenden. oder Pub/Sub-Nachrichten mit HTTP-Callbacks und Eventarc Trigger. Auch wenn Sie einen Workflow mit Ereignissen oder Pub/Sub-Nachrichten auslösen, können Sie die Ausführung anhalten, um auf ein anderes Ereignis zu warten, wird fortgesetzt. Ein Ereignis löst z. B. einen Workflow aus, um einen Prozess zu initiieren, aber muss der Workflow auf ein anderes Ereignis warten, das signalisiert, dass der Prozess abgeschlossen ist. Sie können dies implementieren, indem ein Workflow einen anderen aufruft. zu optimieren.
Lernziele
In dieser Anleitung geschieht Folgendes:
Ein primärer Workflow, der auf Ereignisse warten muss, wird bereitgestellt und ausgeführt. Da er warten muss, bis die Ereignisse eintreten, speichert er seine Callback-Details in einem Firestore-Datenbank, damit der sekundäre Workflow die Details. Der primäre Workflow wartet dann auf die HTTP-Aufrufe.
Durch die Ereignisse wird ein sekundärer Workflow ausgelöst und ruft den Callback-Details aus der Firestore-Datenbank, generiert werden. Der sekundäre Workflow ruft dann den primären Workflow auf, und setzt die Ausführung fort.
Hier eine Übersicht über den gesamten Prozess:
Primärer Workflow:
- Ein
callback-event-sample
-Workflow erstellt Callback-Endpunkte für zwei Ereignisse. Quellen: ein Pub/Sub-Thema und ein Cloud Storage-Bucket. - Dieser Workflow speichert beide Callback-Endpunkte in einem Firestore. Dokument.
- Dieser Workflow hält seine Ausführung an und wartet auf das Eingang von HTTP-Anfragen die Callback-Endpunkte zugewiesen sind.
Ereignisse:
- Ereignisse treten auf: Eine Nachricht wird in einem Pub/Sub-Thema veröffentlicht und eine Datei wird in einen Cloud Storage-Bucket hochgeladen.
Sekundärer Workflow:
- Eventarc leitet die Ereignisse an den
callback-event-listener
-Workflow und löst seine Ausführung aus. - Dieser Workflow ruft die entsprechenden Callback-Endpunkt-URLs aus der Firestore-Dokument.
- Dieser Workflow führt die Callbacks an die entsprechenden Endpunkte im Beispiel-Workflow.
Primärer Workflow:
- Der
callback-event-sample
-Workflow empfängt die Ereignisse im und setzt die Ausführung fort. - Mit diesem Workflow werden die Callback-URLs aus Firestore gelöscht und schließt seine Ausführung ab.
Kosten
In diesem Dokument verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:
Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen.
Hinweise
Sie können die folgenden Befehle in der Google Cloud Console ausführen oder den Befehl Google Cloud CLI entweder in Ihrem Terminal oder in Cloud Shell
Von Ihrer Organisation definierte Sicherheitsbeschränkungen verhindern möglicherweise, dass die folgenden Schritte ausgeführt werden. Informationen zur Fehlerbehebung finden Sie unter Anwendungen in einer eingeschränkten Google Cloud-Umgebung entwickeln.
Console
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
Aktivieren Sie App Engine, Eventarc, Firestore, Pub/Sub und Workflows API.
Erstellen Sie ein Dienstkonto für Ihren Workflow zur Authentifizierung bei anderen Google Cloud-Diensten und weisen Sie ihm die entsprechenden Rollen zu:
Rufen Sie in der Google Cloud Console die Seite Dienstkonten auf:
Wählen Sie Ihr Projekt aus, um zur Seite Dienstkonto erstellen zu gelangen.
Geben Sie im Feld Dienstkontoname einen Namen ein. Die Google Cloud Console füllt das Feld Dienstkonto-ID anhand dieses Namens aus.
Geben Sie im Feld Dienstkontobeschreibung eine Beschreibung ein. Beispiel:
Service account for tutorial
Klicken Sie auf Erstellen und fortfahren.
Filtern Sie in der Liste Rolle auswählen nach den folgenden zu gewährenden Rollen auf das nutzerverwaltete Dienstkonto, das Sie im vorherigen Schritt erstellt haben:
- Cloud Datastore-Nutzer: für den Zugriff auf Firestore im Datastore-Modus (Datenspeicher) Daten.
- Eventarc Event Receiver (Empfänger von Eventarc-Ereignissen): zum Empfangen von Ereignissen von Ereignisanbietern
- Logautor: zum Schreiben von Logs.
- Workflows-Aufrufer: zum Ausführen von Workflows und Verwalten des Ausführungen.
Klicken Sie auf
Weitere Rolle hinzufügen, um weitere Rollen hinzuzufügen.Klicken Sie auf Weiter.
Klicken Sie zum Abschließen der Erstellung des Kontos auf Fertig.
Um einen Eventarc-Trigger zu erstellen, der Ereignisse Cloud Storage, Rolle „Pub/Sub-Publisher“ gewähren an den Cloud Storage-Dienst-Agent senden. Normalerweise ist dies
service-PROJECT_NUMBER@gs-project-accounts.iam.gserviceaccount.com
. Sie können die E-Mail-Adresse für den Cloud Storage-Dienst-Agent abrufen.Öffnen Sie in der Google Cloud Console die Seite IAM.
Klicken Sie in der Zeile für den Cloud Storage-Dienst-Agent auf
Hauptkonto bearbeiten. (Wenn der Dienst-Agent nicht aufgeführt ist, fahren Sie mit dem nächsten Schritt fort.) Der Bereich Zugriff bearbeiten wird geöffnet.- Klicken Sie auf addWeitere Rolle hinzufügen und suchen Sie nach der Rolle Pub/Sub Publisher.
- Wählen Sie die Rolle aus.
- Klicken Sie auf Speichern.
Wenn der Dienst-Agent nicht aufgeführt ist, klicken Sie auf
Zugriff erlauben. Der Bereich Zugriff gewähren wird geöffnet.- Geben Sie im Feld Neue Hauptkonten die E-Mail-Adresse des Dienst-Agents ein.
- Suchen Sie in der Liste Rolle auswählen nach der Rolle Pub/Sub-Publisher.
- Wählen Sie die Rolle aus.
- Klicken Sie auf Speichern.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
Aktivieren Sie App Engine, Eventarc Firestore, Pub/Sub und Workflows APIs
gcloud services enable \ appengine.googleapis.com \ eventarc.googleapis.com \ firestore.googleapis.com \ pubsub.googleapis.com \ workflows.googleapis.com
Erstellen Sie ein Dienstkonto für Ihren Workflow zur Authentifizierung bei anderen Google Cloud-Diensten und weisen ihm die entsprechenden Rollen zu.
Erstellen Sie das Dienstkonto:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
Ersetzen Sie
SERVICE_ACCOUNT_NAME
durch einen Namen für das Dienstkonto.Weisen Sie dem nutzerverwalteten Dienstkonto Rollen zu, das Sie im vorherigen Schritt. Führen Sie den folgenden Befehl jeweils einmal aus: IAM-Rollen:
roles/datastore.user
: für den Zugriff auf Firestore im Datastore-Modus (Datenspeicher) Daten.roles/eventarc.eventReceiver
: zum Empfangen von Ereignissen aus dem Ereignis Anbieter.roles/logging.logWriter
: Zum Schreiben von Logs.roles/workflows.invoker
: Zum Ausführen von Workflows und Verwalten des Ausführungen.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \ --role=ROLE
Ersetzen Sie Folgendes:
PROJECT_ID
: die Projekt-ID in dem Sie das Dienstkonto erstellt habenROLE
: die zu gewährende Rolle
Um einen Eventarc-Trigger zu erstellen, der Ereignisse Cloud Storage, Rolle „Pub/Sub-Publisher“ gewähren zu den Cloud Storage-Dienst-Agent. Normalerweise ist dies
service-PROJECT_NUMBER@gs-project-accounts.iam.gserviceaccount.com
. Verwenden Siegcloud storage service-agent
um zuerst den Cloud Storage-Dienst-Agent abzurufen.SERVICE_ACCOUNT_STORAGE="$(gcloud storage service-agent --project=PROJECT_ID)" gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:$SERVICE_ACCOUNT_STORAGE \ --role=roles/pubsub.publisher
Firestore-Datenbank erstellen
Firestore speichert Ihre Daten in Dokumenten, die Felder enthalten Werte zuordnen. Diese Dokumente werden in Sammlungen gespeichert, Container für Ihre Dokumente, mit denen Sie Ihre Daten organisieren und Abfragen. Weitere Informationen zu Firestore
Beachten Sie, dass jedes Google Cloud-Projekt auf ein Firestore beschränkt ist. Datenbank. Führen Sie die folgenden Schritte aus, wenn Sie eine neue Datenbank erstellen müssen.
Console
Rufen Sie in der Google Cloud Console Firestore auf. Seite "Jetzt starten"
Klicken Sie auf Nativen Modus auswählen.
Hinweise zur Auswahl eines Datenbankmodus und für einzelne Funktionen finden Sie unter Zwischen nativem Modus und Datastore-Modus wechseln.
Wählen Sie in der Liste Standort auswählen die Option nam5 (USA) aus.
Der Standort gilt sowohl für die Firestore-Datenbank als auch der App Engine-Anwendung in Ihrem Google Cloud-Projekt. Nachdem Sie die Datenbank erstellt haben, können Sie den Speicherort nicht mehr ändern.
Klicken Sie auf Datenbank erstellen.
gcloud
Zum Erstellen einer Firestore-Datenbank müssen Sie zuerst eine erstellen:
App Engine-Anwendung aus und führen Sie dann den
gcloud firestore databases create
Befehl:
gcloud app create --region=us-central gcloud firestore databases create --region=us-central
Sie können die us-central is not a valid Firestore location
-Warnung ignorieren.
App Engine und Firestore unterstützen dieselben Standorte,
Die App Engine-Region us-central
(Iowa) wird jedoch
Firestore nam5
(USA)
multiregional.
Pub/Sub-Thema erstellen
In dieser Anleitung wird Pub/Sub als Ereignisquelle verwendet. Erstellen: Pub/Sub-Thema, damit Sie eine Nachricht darin veröffentlichen können. Weitere Informationen zum Erstellen und Verwalten von Themen
Console
Rufen Sie in der Google Cloud Console die Pub/Sub-Seite auf. Themen
Klicken Sie auf
Thema erstellen.Geben Sie im Feld Themen-ID den Wert
topic-callback
ein.Übernehmen Sie die anderen Standardeinstellungen.
Klicken Sie auf Thema erstellen.
gcloud
Führen Sie den Befehl gcloud pubsub topics create
aus, um ein Thema zu erstellen:
gcloud pubsub topics create topic-callback
Cloud Storage-Bucket erstellen
In dieser Anleitung wird Cloud Storage als Ereignisquelle verwendet. Erstellen: Cloud Storage-Bucket, damit Sie eine Datei in ihn hochladen können. Weitere Informationen zum Erstellen von Storage-Buckets
Console
Wechseln Sie in der Cloud Console zur Seite Cloud Storage-Buckets.
Klicken Sie auf
Erstellen.Geben Sie als Name für den Bucket Folgendes ein:
PROJECT_ID-bucket-callback
Die Projekt-ID wird im
callback-event-sample
-Workflow verwendet, um den Bucket zu identifizieren.Klicken Sie auf Weiter.
Wählen Sie als Standorttyp die Option Region und dann us-central1 (Iowa) aus.
Übernehmen Sie die anderen Standardeinstellungen.
Klicken Sie auf Erstellen.
gcloud
Führen Sie den Befehl
gcloud storage buckets create
Befehl:
gcloud storage buckets create gs://PROJECT_ID-bucket-callback \ --location=us-central1
Die Projekt-ID
wird im callback-event-sample
-Workflow verwendet, um den Bucket zu identifizieren.
Nachdem die Ereignisquellen erstellt wurden, können Sie den Workflow für den Ereignisempfänger bereitstellen.
Workflow bereitstellen, der auf Ereignisse überwacht
Der callback-event-listener
-Workflow wird ausgelöst, wenn eine Nachricht veröffentlicht wird
an ein Pub/Sub-Thema gesendet oder eine Datei in Cloud Storage hochgeladen wird.
Bucket. Der Workflow empfängt das Ereignis und ruft den entsprechenden Callback ab.
Details aus der Firestore-Datenbank aus und sendet dann
-Anfrage an den Callback-Endpunkt.
Console
Rufen Sie in der Google Cloud Console die Seite Workflows auf. Seite:
Klicken Sie auf
Erstellen.Geben Sie einen Namen für den neuen Workflow ein:
callback-event-listener
.Wählen Sie in der Liste Region die Option us-central1 aus.
Wählen Sie das zuvor erstellte Dienstkonto aus.
Klicken Sie auf Weiter.
Geben Sie im Workflow-Editor die folgende Definition für den Workflow ein:
Klicken Sie auf Bereitstellen.
gcloud
Erstellen Sie eine Quellcodedatei für Ihren Workflow:
touch callback-event-listener.yaml
Kopieren Sie in einem Texteditor den folgenden Workflow in Ihre Quellcodedatei:
Stellen Sie den Workflow bereit. Geben Sie hierzu den folgenden Befehl ein:
gcloud workflows deploy callback-event-listener \ --source=callback-event-listener.yaml \ --location=us-central1 \ --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Ersetzen Sie
SERVICE_ACCOUNT_NAME
durch den Namen von das zuvor erstellte Dienstkonto.
Workflow bereitstellen, der auf Ereignisse wartet
Der callback-event-sample
-Workflow speichert seine Callback-Details in einem
Firestore-Datenbank erstellt, hält die Ausführung an und wartet dann auf
bestimmte Ereignisse eintreten.
Console
Rufen Sie in der Google Cloud Console die Seite Workflows auf. Seite:
Klicken Sie auf
Erstellen.Geben Sie einen Namen für den neuen Workflow ein:
callback-event-sample
.Wählen Sie in der Liste Region die Option us-central1 aus.
Wählen Sie das zuvor erstellte Dienstkonto aus.
Klicken Sie auf Weiter.
Geben Sie im Workflow-Editor die folgende Definition für den Workflow ein:
Klicken Sie auf Bereitstellen.
gcloud
Erstellen Sie eine Quellcodedatei für Ihren Workflow:
touch callback-event-sample.yaml
Kopieren Sie in einem Texteditor den folgenden Workflow in Ihre Quellcodedatei:
Stellen Sie den Workflow bereit. Geben Sie hierzu den folgenden Befehl ein:
gcloud workflows deploy callback-event-sample \ --source=callback-event-sample.yaml \ --location=us-central1 \ --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Ersetzen Sie
SERVICE_ACCOUNT_NAME
durch den Namen von das zuvor erstellte Dienstkonto.
Eventarc-Trigger zum Weiterleiten von Pub/Sub-Ereignissen erstellen
Mit einem Eventarc-Trigger können Sie Ereignisse weiterleiten, indem Sie
Filter für den Trigger, einschließlich Ereignisquelle und Zielworkflow.
Erstellen Sie einen Eventarc-Trigger, um die
callback-event-listener
als Ergebnis der Veröffentlichung einer Nachricht in einem
Pub/Sub-Thema.
Weitere Informationen zum Auslösen eines Workflows
Console
Rufen Sie in der Google Cloud Console die Seite Eventarc auf.
Klicken Sie auf
Trigger erstellen.Geben Sie einen Triggernamen ein.
Beispiel:
trigger-pubsub-events-listener
.Wählen Sie in der Liste Ereignisanbieter die Option Cloud Pub/Sub aus.
Wählen Sie in der Liste Ereignis unter Benutzerdefiniert die Option google.cloud.pubsub.topic.v1.messagePublished aus.
Wählen Sie aus der Liste Cloud Pub/Sub-Thema auswählen das Thema aus, erstellt wurde.
Wählen Sie in der Liste Region die Option us-central1 (Iowa) aus.
Gewähren Sie diesem Nutzer die Rolle
iam.serviceAccountTokenCreator
, wenn Sie dazu aufgefordert werden. das Pub/Sub-Dienstkonto.Wählen Sie das zuvor erstellte Dienstkonto aus.
Wählen Sie in der Liste Ereignisziel die Option Workflows aus.
Wählen Sie in der Liste Workflow auswählen die Option callback-event-listener aus. zu optimieren.
Klicken Sie auf Erstellen.
gcloud
Führen Sie zum Erstellen eines Triggers den Befehl
gcloud eventarc triggers create
Befehl:
gcloud eventarc triggers create trigger-pubsub-events-listener \ --location=us-central1 \ --destination-workflow=callback-event-listener \ --destination-workflow-location=us-central1 \ --event-filters="type=google.cloud.pubsub.topic.v1.messagePublished" \ --transport-topic=topic-callback \ --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Ereignisse werden umgewandelt und als Laufzeitargumente an die Workflowausführung übergeben. Es kann bis zu zwei Minuten dauern, bis der neue Trigger aktiv wird.
Eventarc-Trigger erstellen, um Cloud Storage-Ereignisse weiterzuleiten
Mit einem Eventarc-Trigger können Sie Ereignisse weiterleiten, indem Sie
Filter für den Trigger, einschließlich Ereignisquelle und Zielworkflow.
Erstellen Sie einen Eventarc-Trigger, um die
callback-event-listener
als Ergebnis des Hochladens einer Datei in eine
Cloud Storage-Bucket.
Weitere Informationen zum Auslösen eines Workflows
Console
Rufen Sie in der Google Cloud Console Eventarc auf. Seite.
Klicken Sie auf
Trigger erstellen.Geben Sie einen Triggernamen ein.
Beispiel:
trigger-storage-events-listener
.Wählen Sie im Feld Ereignisanbieter die Option Cloud Storage aus.
Wählen Sie in der Liste Ereignis unter Direkt die Option aus. google.cloud.storage.object.v1.finalized
Suchen Sie in der Liste Bucket nach dem Bucket, den Sie zuvor erstellt haben. und wählen Sie es aus.
Gehen Sie in der Liste Region entsprechend Ihrem Cloud Storage-Bucket so vor: Übernehmen Sie den Standardwert us-central1 (Iowa).
Gewähren Sie diesem Nutzer die Rolle
iam.serviceAccountTokenCreator
, wenn Sie dazu aufgefordert werden. das Pub/Sub-Dienstkonto.Wählen Sie das zuvor erstellte Dienstkonto aus.
Wählen Sie in der Liste Ereignisziel die Option Workflows aus.
Wählen Sie in der Liste Workflow auswählen die Option callback-event-listener aus. zu optimieren.
Klicken Sie auf Erstellen.
gcloud
Führen Sie zum Erstellen eines Triggers den Befehl
gcloud eventarc triggers create
Befehl:
gcloud eventarc triggers create trigger-storage-events-listener \ --location=us-central1 \ --destination-workflow=callback-event-listener \ --destination-workflow-location=us-central1 \ --event-filters="type=google.cloud.storage.object.v1.finalized" \ --event-filters="bucket=PROJECT_ID-bucket-callback" \ --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Ereignisse werden umgewandelt und als Laufzeitargumente an die Workflowausführung übergeben. Es kann bis zu zwei Minuten dauern, bis der neue Trigger aktiv wird.
Primären Workflow ausführen
Bei der Ausführung eines Workflows wird die aktuelle Workflowdefinition ausgeführt, die dem Workflow zugeordnet ist. Führen Sie den Workflow callback-event-sample
aus. Dies ist die primäre
und wartet, bis bestimmte Ereignisse eintreten, und setzt die Ausführung
Der sekundäre Workflow stellt die entsprechenden Callback-Anfragen.
Console
Öffnen Sie in der Google Cloud Console die Seite Workflows.
Klicken Sie auf der Seite Workflows auf das callback-event-sample-Workflow, um die zugehörige Detailseite aufzurufen.
Klicken Sie auf der Seite Workflow-Details auf play_arrow Ausführen.
Klicken Sie noch einmal auf Ausführen.
Die Workflowausführung wird gestartet. Während der Ausführung sollten Sie Folgendes sehen: den Ausführungsstatus
Running
und einen Logeintrag wie den Folgendes:Started waiting 1hr for an event from source topic-callback
.
gcloud
Um einen Workflow auszuführen, führen Sie den
gcloud workflows run
-Befehl:
gcloud workflows run callback-event-sample \ --location=us-central1
Die Workflowausführung wird gestartet. Während der Ausführung sollten Sie Folgendes sehen: einen Ausführungsstatus ähnlich dem folgenden:
Waiting for execution [a848a164-268a-449c-b2fe-396f32f2ed66] to complete...working...
Ereignisse generieren und Ausführungsstatus prüfen
Sie können bestätigen, dass die Ergebnisse Ihren Erwartungen entsprechen, indem Sie Ereignisse generieren, sich Logeinträge und Überprüfung des Workflow-Ausführungsstatus.
Nachricht veröffentlichen
Veröffentlichen Sie eine Nachricht in dem Pub/Sub-Thema, das Sie zuvor erstellt haben. erstellt.
Console
Rufen Sie in der Google Cloud Console die Pub/Sub-Seite auf. Themen
Klicken Sie auf topic-callback.
Klicken Sie auf den Tab Nachrichten.
Klicken Sie auf Nachricht veröffentlichen.
Geben Sie im Feld Nachrichtentext
Hello World
ein.Klicken Sie auf Veröffentlichen.
gcloud
Veröffentlichen Sie eine Nachricht mit dem Befehl gcloud pubsub topics publish:
gcloud pubsub topics publish topic-callback \ --message="Hello World"
Objekt hochladen
Laden Sie eine Datei in den Cloud Storage-Bucket hoch, den Sie zuvor erstellt haben.
Console
- Wechseln Sie in der Cloud Console zur Seite Cloud Storage-Buckets.
Klicken Sie auf den Namen des Buckets, den Sie zuvor erstellt haben.
Führen Sie auf dem Tab Objekte einen der folgenden Schritte aus:
Ziehen Sie die gewünschte Datei per Drag-and-drop von Ihrem Desktop oder Dateimanager hierher. zum Hauptbereich der Google Cloud Console.
Klicken Sie auf Dateien hochladen, wählen Sie die Datei aus, die Sie hochladen möchten. Klicken Sie dann auf Öffnen.
gcloud
Um eine Datei hochzuladen, führen Sie den gcloud storage cp
aus.
Befehl:
gcloud storage cp OBJECT_LOCATION gs://PROJECT_ID-bucket-callback/
Ersetzen Sie OBJECT_LOCATION
durch den lokalen Pfad zu Ihrem
-Objekt enthält. Beispiel: random.txt
.
Logeinträge und Ausführungsstatus ansehen
Prüfen Sie, ob der callback-event-sample
-Workflow erfolgreich abgeschlossen wurde.
Console
Öffnen Sie in der Google Cloud Console die Seite Workflows.
Klicken Sie auf der Seite Workflows auf das callback-event-sample-Workflow, um die zugehörige Detailseite aufzurufen.
So rufen Sie auf der Seite Workflowdetails die Details für klicken Sie auf die entsprechende Ausführungs-ID.
Der Ausführungsstatus sollte Erfolgreich lauten. Geben Sie im Ausgabebereich sollten Sie das empfangene Pub/Sub sehen Cloud Storage-Ereignisse.
gcloud
Filtern Sie die Logeinträge und geben Sie die Ausgabe im JSON-Format zurück:
gcloud logging read "resource.type=workflows.googleapis.com/Workflow AND textPayload:calling OR textPayload:waiting" \ --format=json
Suchen Sie nach Logeinträgen wie diesen:
"textPayload": "Stopped waiting for an event from source..." "textPayload": "Calling back url https://workflowexecutions.googleapis.com/v1/projects/..." "textPayload": "Started waiting 1hr for an event from source..."
Prüfen Sie den Status des letzten Ausführungsversuchs:
gcloud workflows executions wait-last
Das Ergebnis sollte in etwa so aussehen:
Using cached execution name: projects/1085953646031/locations/us-central1/workflows/callback-event-sample/executions/79929e4e-82c1-4da1-b068-f828034c01b7 Waiting for execution [79929e4e-82c1-4da1-b068-f828034c01b7] to complete...done. [...] state: SUCCEEDED
Bereinigen
Wenn Sie ein neues Projekt für diese Anleitung erstellt haben, löschen Sie das Projekt. Wenn Sie ein vorhandenes Projekt verwendet haben und es beibehalten möchten, ohne die Änderungen in dieser Anleitung hinzuzufügen, löschen Sie die für die Anleitung erstellten Ressourcen.
Projekt löschen
Am einfachsten vermeiden Sie weitere Kosten durch Löschen des für die Anleitung erstellten Projekts.
So löschen Sie das Projekt:
- Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.
In dieser Anleitung erstellte Ressourcen löschen
Nächste Schritte
- Probieren Sie die Anleitung Human-in-the-Loop-Workflow mithilfe von Callbacks erstellen aus.