Workflow mit Ereignissen oder Pub/Sub-Nachrichten auslösen
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Sie können einen Eventarc-Trigger verwenden, um einen Workflow als Reaktion auf ein Ereignis oder eine Reihe von Ereignissen auszuführen. Die Ereignisse werden von einem Ereignisanbieter an interessierte Ereignisempfänger weitergeleitet.
Eventarc liefert Ereignisse über eine HTTP-Anfrage an den Ereignisempfänger im CloudEvents-Format. Der Workflows-Dienst konvertiert das Ereignis in ein JSON-Objekt (gemäß der CloudEvents-Spezifikation) und übergibt das Ereignis als Workflow-Laufzeitargument an die Workflow-Ausführung.
Die Ausführung Ihres Workflows wird ausgelöst:
Wenn ein Audit-Log erstellt wird, das den Filterkriterien des Triggers entspricht.
Ein Beispiel finden Sie in dieser Kurzanleitung, in der Sie Workflows mit Ereignissen aus BigQuery mithilfe von Cloud-Audit-Logs auslösen.
Als Reaktion auf direkte Ereignisse, z. B. eine Aktualisierung eines Cloud Storage-Buckets oder eine Aktualisierung einer Firebase Remote Config-Vorlage. Ein Beispiel finden Sie in dieser Kurzanleitung, in der Sie Workflows mit direkten Ereignissen aus Cloud Storage auslösen.
Nach Nachrichten, die in einem Pub/Sub-Thema veröffentlicht wurden. Kurzanleitung
Wichtige Hinweise:
Ereignisse gelten als zugestellt, sobald die Workflowausführung beginnt. Die eigentliche Ausführung erfolgt asynchron in den Workflows-Diensten.
Ausführungen, die durch Ereignisse ausgelöst werden, werden nicht wiederholt, wenn die Workflowausführung beginnt, aber später fehlschlägt. Weitere Informationen finden Sie unter Richtlinie für das Wiederholen von Ereignissen.
Das Deduplizierungsfenster für Workflows, um die Exactly-Once-Verarbeitung von Ereignissen zu gewährleisten, beträgt 24 Stunden.
Wenn Sie Workflows als Ziel für einen Eventarc-Trigger verwenden, lösen Ereignisse, die größer als die maximale Argumentgröße von Workflows sind, keine Workflow-Ausführungen aus.
Weitere Informationen finden Sie unter Kontingente und Limits.
Wenn Sie in Projekten, die durch einen Dienstperimeter geschützt sind, Ereignisse an Workflows-Ziele weiterleiten, für die der Pub/Sub-Push-Endpunkt auf eine Workflows-Ausführung festgelegt ist, können Sie neue Pub/Sub-Push-Abos nur über Eventarc erstellen. Das Dienstkonto, das für die Push-Authentifizierung für den Workflows-Endpunkt verwendet wird, muss im Dienstperimeter enthalten sein. Weitere Informationen finden Sie unter Dienstperimeter mit VPC Service Controls einrichten.
Trigger mit der Google Cloud-Befehlszeile erstellen
Wenn Sie einen gcloud eventarc triggers create-Befehl zusammen mit den erforderlichen und optionalen Flags ausführen, können Sie einen Trigger erstellen.
Wählen Sie ein Projekt aus und klicken Sie auf Dienstkonto erstellen.
Geben Sie im Feld Name des Dienstkontos einen Namen ein, der zwischen 6 und 30 Zeichen lang ist.
Er kann alphanumerische Zeichen in Kleinschreibung sowie Bindestriche enthalten. Nachdem Sie ein Dienstkonto erstellt haben, können Sie den Namen nicht mehr ändern.
Klicken Sie auf Erstellen und fortfahren.
Weisen Sie Ihrem neuen Dienstkonto die Rolle workflows.invoker zu, damit das Konto die Berechtigung zum Auslösen Ihres Workflows hat. Wählen Sie in der Liste Rolle auswählen die Option Workflows > Workflows-Aufrufer aus.
Wählen Sie das Dienstkonto aus, das Ihren Workflow aufruft.
Dies gibt das IAM-Dienstkonto an, dem Sie zuvor die Rolle workflows.invoker zugewiesen haben, damit das Konto die Berechtigung zum Auslösen Ihres Workflows hat.
Klicken Sie auf Trigger speichern.
Der Eventarc-Trigger wird auf der Seite Workflowdetails auf dem Tab Trigger aufgeführt.
Wenn Sie den Trigger aktualisieren oder löschen möchten, müssen Sie den Workflow bearbeiten:
Klicken Sie auf der Seite Workflow-Details auf editAusführen.
Suchen Sie im Bereich Trigger nach dem Trigger, den Sie aktualisieren oder löschen möchten.
Klicken Sie auf editRessource bearbeiten oder deleteRessource löschen.
Die Ausführung Ihres Workflows wird jetzt durch die Ereignisse ausgelöst, die den Filterkriterien Ihres Triggers entsprechen.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-09-04 (UTC)."],[],[],null,["# Trigger a workflow with events or Pub/Sub messages\n\nYou can use an Eventarc trigger to execute a workflow as a\nresult of an event or a set of events. The events are routed from an event\nprovider to interested event receivers.\n\nEventarc delivers events to the event receiver in the CloudEvents\nformat through an HTTP request. The Workflows service converts the\nevent to a JSON object (following the\n[CloudEvents specification](/eventarc/docs/workflows/cloudevents))\nand passes the event into the workflow execution as a\n[workflow runtime argument](/workflows/docs/passing-runtime-arguments).\n\nAn execution of your workflow is triggered:\n\n- When an **audit log is created** that matches the trigger's filter criteria. For example, see this quickstart in which you trigger Workflows with [events from BigQuery using Cloud Audit Logs](/eventarc/docs/workflows/quickstart-cal).\n- In response to **direct events** such as an update to a Cloud Storage bucket or an update to a Firebase Remote Config template. For example, see this quickstart in which you trigger Workflows with [direct\n events from Cloud Storage](/eventarc/docs/workflows/quickstart-storage).\n- By **messages published to a Pub/Sub topic** . For example, see this quickstart in which you trigger Workflows with [Pub/Sub messages](/eventarc/docs/workflows/quickstart-pubsub).\n\nNote the following:\n\n- Events are considered delivered as soon as the workflow execution starts, and\n the actual execution takes place asynchronously in the Workflows\n services.\n\n- Executions triggered by events are not retried if the workflow execution\n starts, but later fails. For more information, see the\n [Event retry policy](/eventarc/docs/overview#event_retry_policy).\n\n- The Workflows deduplication window to ensure exactly-once\n processing of events is 24 hours.\n\n- When using Workflows as the destination for an\n Eventarc trigger, events larger than the maximum\n Workflows argument size will fail to trigger workflow executions.\n For more information, see [Quotas and limits](/workflows/quotas).\n\n- In projects protected by a service perimeter, when routing events to\n Workflows destinations for which the Pub/Sub\n push endpoint is set to a Workflows execution, you can only\n create new Pub/Sub push subscriptions through\n Eventarc. Note that the service account used for push\n authentication for the Workflows endpoint must be included in\n the service perimeter. For more information, see\n [Set up a service perimeter using VPC Service Controls](/eventarc/docs/using-vpc-service-controls).\n\nCreate a trigger using the Google Cloud CLI\n-------------------------------------------\n\nYou can create a trigger by running a `gcloud eventarc triggers create` command\nalong with required and optional flags.\n\nFor more information, see the **gcloud** instructions in the \"Create a\ntrigger\" section when\n[creating a trigger for a specific provider, event type, and Workflows destination](/eventarc/docs/targets#triggers).\n\nCreate a trigger using the console\n----------------------------------\n\nThe following steps show you how to create a trigger on the\n**Workflows** page in the Google Cloud console.\n\n### Before you begin\n\n1.\n\n\n Enable the Eventarc and Pub/Sub APIs.\n\n\n [Enable the APIs](https://console.cloud.google.com/flows/enableapi?apiid=eventarc.googleapis.com,pubsub.googleapis.com)\n2. Create a [service account](/workflows/docs/authentication)\n so that Eventarc can make requests to the Workflows API:\n\n 1. In the Google Cloud console, go to the **Service Accounts** page.\n\n\n [Go to Service Accounts](https://console.cloud.google.com/projectselector2/iam-admin/serviceaccounts)\n\n \u003cbr /\u003e\n\n 2. Select a project and then click **Create service account**.\n\n 3. In the **Service account name** field, enter a name that is between 6 and\n 30 characters.\n\n It can contain lowercase alphanumeric characters and\n dashes. After you create a service account, you cannot change its name.\n 4. Click **Create and continue**.\n\n 5. Grant your new service account the\n [workflows.invoker](/workflows/docs/access-control#roles) role so that the\n account has permission to trigger your workflow. In the **Select a role**\n list, select **Workflows \\\u003e Workflows Invoker**.\n\n If you are developing a production app, always grant the least permissive roles\n possible. For more information, see\n [Manage access to projects, folders, and organizations](/iam/docs/granting-roles-to-service-accounts).\n 6. Click **Done**.\n\n3. To allow the principal that will run your Eventarc\n commands the ability to act as an Identity and Access Management (IAM) service\n account,\n [grant a role that allows the principal to impersonate the service account](/iam/docs/service-account-permissions#roles).\n\n### Configure the trigger\n\n1. If you don't already have a workflow that you want to trigger,\n [create and deploy one](/workflows/docs/creating-updating-workflow#creating_a_workflow).\n\n2. In the Google Cloud console, go to the **Workflows** page:\n\n\n [Go to Workflows](https://console.cloud.google.com/workflows)\n\n \u003cbr /\u003e\n\n3. On the Workflows page, select a workflow to go to its details\n page.\n\n4. On the **Workflow Details** page, click\n *edit* **Edit**.\n\n5. On the **Edit workflow** page, select **Add new trigger \\\u003e\n Eventarc**.\n\n The **Eventarc trigger** pane opens.\n6. Follow the instructions to\n [create a trigger for a specific provider, event type, and\n Workflows destination](/eventarc/standard/docs/event-providers-targets#triggers)\n and refer to the **Console** instructions in the \"Create a trigger\" section.\n\n7. Select the **Service account** that invokes your workflow.\n\n This specifies the IAM service account to which you\n previously granted the `workflows.invoker` role so that the account has\n permission to trigger your workflow.\n8. Click **Save trigger**.\n\n | **Note:** If you are updating an existing workflow, you do *not* need to redeploy the workflow. However, if you are creating a new workflow, you must also deploy the workflow.\n\n The Eventarc trigger is listed on the **Triggers**\n tab of the **Workflows Details** page.\n9. If you want to update or delete the trigger, you must edit the workflow:\n\n 1. On the **Workflow Details** page, click *edit* **Edit**.\n 2. In the **Triggers** section, find the trigger you want to update or delete.\n 3. Click *edit* **Edit resource** or *delete* **Delete resource**.\n\nYour workflow execution is now triggered by the events that match your trigger's\nfilter criteria.\n\nCreate a trigger using Terraform\n--------------------------------\n\nYou can create a trigger for a workflow using Terraform. For details, see\n[Trigger a workflow using Eventarc and Terraform](/eventarc/docs/creating-triggers-terraform).\n\nWhat's next\n-----------\n\n- [Learn more about Eventarc](/eventarc/docs/overview)"]]