Auf dieser Seite erfahren Sie, wie Sie Probleme bei der Verwendung von Eventarc für Workflows beheben.
Weitere Probleme, die auftreten können, finden Sie unter:
Triggererstellung schlägt fehl, da Workflowziel nicht vorhanden ist
Möglicherweise erhalten Sie eine Fehlermeldung, die so aussieht:
cloud workflow "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_ID" does not exist
PROJECT_ID
: Ihre Google Cloud-Projekt-IDLOCATION
: Der Speicherort Ihres WorkflowsWORKFLOW_ID
: Der Name Ihres Workflows.
Das passiert, wenn Eventarc den Zielworkflow nicht finden kann. So beheben Sie dies:
Prüfen Sie, ob der Zielworkflow vorhanden und AKTIV ist:
gcloud workflows list --location -
Die Ausgabe sollte in etwa so aussehen:
NAME STATE REVISION_ID UPDATE_TIME projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_ID ACTIVE 000004-c0c 2021-11-19T14:29:27.530185556Z
Prüfen Sie, ob Sie beim Erstellen des Triggers die richtige Workflow-ID und den richtigen Workflow-Speicherort angegeben haben.
Der Trigger wurde erfolgreich erstellt, das Ziel empfängt jedoch keine Ereignisse
Prüfen Sie, ob seit der Erstellung des Triggers genügend Zeit vergangen ist. Es kann bis zu zwei Minuten dauern, bis Ereignisse gesendet werden.
Wenn der Trigger immer noch nicht funktioniert und keine Ereignisse gesendet werden:
Von Pub/Sub an das Ziel gesendete Ereignisse werden möglicherweise verworfen. Damit die Ereignisse nicht verworfen werden, richten Sie eine Wiederholungsrichtlinie für Pub/Sub-Abos ein oder leiten Sie nicht zugestellte Nachrichten an ein Thema für unzustellbare Nachrichten weiter (auch als Warteschlange für unzustellbare Nachrichten bezeichnet).
Bevor Sie das Thema für unzustellbare Nachrichten festlegen, rufen Sie das Thema und das Abo des Triggers ab:
gcloud eventarc triggers describe TRIGGER \ --location=LOCATION
Ersetzen Sie Folgendes:
TRIGGER
: ID des Triggers oder eine voll qualifizierte Kennzeichnung.LOCATION
: Standort des Eventarc-Triggers.
Verwenden Sie die Google Cloud Console, um zu überwachen, ob Nachrichten mit dem Messwert im Pub/Sub-Thema veröffentlicht werden:
topic/send_message_operation_count
.Wenn keine Nachrichten im Pub/Sub-Thema veröffentlicht werden, prüfen Sie, ob die Quelle Ereignisse generiert:
- Prüfen Sie für Ereignisse aus Cloud-Audit-Logs in den Logs, ob der überwachte Dienst Logs schreibt. Wenn Logs aufgezeichnet, aber keine Ereignisse zugestellt werden, wenden Sie sich an den Support.
Prüfen Sie für Ereignisse aus Cloud Storage die Benachrichtigungen für Ihren Bucket:
Ersetzen Siegcloud storage buckets notifications list gs://BUCKET_NAME
BUCKET_NAME
durch den Namen des Buckets.
Die Ausgabe sollte in etwa so aussehen:projects/_/buckets/BUCKET_NAME/notificationConfigs/NOTIFICATION_CONFIG_ID Cloud Pub/Sub topic: projects/PROJECT_ID/topics/TOPIC_ID Filters: Event Types: OBJECT_ARCHIVE
Diese Ausgabe enthält die folgenden Werte:
TOPIC_ID
: die ID des vorhandenen Pub/Sub-Themas.NOTIFICATION_CONFIG_ID
: Die ID der Benachrichtigungskonfiguration.
Wenn Ereignisse zugestellt, aber keine Workflowausführungen ausgelöst werden, ist dies wahrscheinlich auf einen nicht authentifizierten Aufruf zurückzuführen. Achten Sie darauf, dass der Trigger mit einem Dienstkonto verknüpft ist, das berechtigt ist, Workflowausführungen zu erstellen. Weitere Informationen finden Sie in den Anweisungen zum Erstellen eines nutzerverwalteten Dienstkontos im Abschnitt „Erstellen eines Triggers vorbereiten“, wenn Sie einen Trigger für einen bestimmten Anbieter, Ereignistyp und Workflows-Ziel erstellen.
Wenn Nachrichten in einem Pub/Sub-Thema veröffentlicht werden, aber keine Workflowausführungen ausgelöst werden, achten Sie darauf, dass die Eventarc-Nutzlast nicht größer als 512 KB ist. Weitere Informationen zu Ressourcenlimits finden Sie unter Kontingente und Limits.
Rufen Sie in der Cloud Console die Seite Abos auf.
Nicht bestätigte Nachrichten im Abo überwachen Weitere Informationen finden Sie unter Weitergeleitete unzustellbare Nachrichten beobachten.
Wenn nicht bestätigte Nachrichten vorhanden sind, überwachen Sie die Workflowlogs für die Methode
TriggerPubsubExecution
. Weitere Informationen zum Aufrufen von Workflow-Logs finden Sie unter Workflow-Logs ansehen.- Verwenden Sie den Filter
Permission 'workflows.executions.create' denied
, um zu prüfen, ob der Trigger einem Dienstkonto zugeordnet ist, das berechtigt ist, Workflowausführungen auszulösen. Weitere Informationen zum Zuweisen der entsprechenden Rollen für das Dienstkonto finden Sie im Abschnitt „Erstellen eines Triggers vorbereiten“, wenn Sie einen Trigger für einen bestimmten Anbieter, Ereignistyp und ein Workflows-Ziel erstellen. - Verwenden Sie das Schlüsselwort
event size exceeded
, um zu prüfen, ob die Ereignisgröße über 512 KB liegt.
- Verwenden Sie den Filter
Wenn Logs aufgezeichnet, aber keine Ereignisse zugestellt werden, wenden Sie sich an den Support.
Weitere Informationen
- Weitere Informationen zu Workflows finden Sie unter Fehlerbehebung.
- Mehr Hilfe erhalten Sie unter Support kontaktieren.