이 페이지에서는 Workflows용 Eventarc를 사용할 때 발생할 수 있는 문제를 해결하는 방법을 보여줍니다.
발생할 수 있는 다른 문제는 다음 문제해결 페이지를 참조하세요.
워크플로 대상이 없으므로 트리거 생성 실패
다음과 유사한 오류 메시지가 표시됩니다.
cloud workflow "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_ID" does not exist
PROJECT_ID
: Google Cloud 프로젝트 IDLOCATION
: 워크플로의 위치WORKFLOW_ID
: 워크플로의 이름
이는 Eventarc에서 대상 워크플로를 찾을 수 없을 때 발생합니다. 이 문제를 해결하려면 다음 안내를 따르세요.
대상 워크플로가 존재하고 활성 상태인지 확인합니다.
gcloud workflows list --location -
출력은 다음과 비슷하게 표시됩니다.
NAME STATE REVISION_ID UPDATE_TIME projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_ID ACTIVE 000004-c0c 2021-11-19T14:29:27.530185556Z
트리거를 만들 때 올바른 워크플로 ID 및 워크플로 위치를 제공했는지 확인합니다.
트리거가 생성되었지만 대상에서 이벤트를 수신하지 않음
트리거를 만든 후 충분한 시간이 경과했는지 확인합니다. 이벤트가 전송되는 데 최대 2분이 걸릴 수 있습니다.
트리거가 계속 작동하지 않고 이벤트가 전송되지 않는 경우 다음 안내를 따르세요.
Pub/Sub에서 대상으로 전송된 이벤트가 삭제될 수 있습니다. 이벤트가 삭제되지 않도록 Pub/Sub 구독 재시도 정책을 설정하거나 전송되지 않은 메시지를 데드 레터 주제(데드 레터 큐라고도 함)로 전달합니다.
데드 레터 주제를 설정하기 전에 트리거의 주제 및 구독을 검색합니다.
gcloud eventarc triggers describe TRIGGER \ --location=LOCATION
다음을 바꿉니다.
TRIGGER
: 트리거의 ID 또는 정규화된 식별자LOCATION
: Eventarc 트리거 위치
Google Cloud 콘솔을 사용하여 메시지가
topic/send_message_operation_count
측정항목과 함께 Pub/Sub 주제에 게시되었는지 모니터링합니다.메시지가 Pub/Sub 주제에 게시되지 않는 경우 소스가 이벤트를 생성하는지 확인합니다.
- Cloud 감사 로그의 이벤트에서 로그를 확인하고 모니터링되는 서비스가 로그를 작성 중인지 확인합니다. 로그가 기록되지만 이벤트가 전송되지 않으면 지원팀에 문의합니다.
Cloud Storage의 이벤트에서 버킷에 대한 알림을 확인합니다.
gsutil notification list gs://BUCKET_NAME
BUCKET_NAME
을 버킷 이름으로 바꿉니다.
출력은 다음과 비슷하게 표시됩니다:projects/_/buckets/BUCKET_NAME/notificationConfigs/NOTIFICATION_CONFIG_ID Cloud Pub/Sub topic: projects/PROJECT_ID/topics/TOPIC_ID Filters: Event Types: OBJECT_ARCHIVE
이 출력에는 다음 값이 포함됩니다.
TOPIC_ID
: 기존 Pub/Sub 주제의 ID입니다.NOTIFICATION_CONFIG_ID
: 알림 구성의 ID입니다.
이벤트가 전송되고 워크플로 실행이 트리거되지 않는 경우 인증되지 않은 호출이 원인일 수 있습니다. 트리거가 워크플로 실행을 만들 수 있는 권한이 있는 서비스 계정과 연결되어 있는지 확인하세요. 자세한 내용은 특정 제공업체, 이벤트 유형, Workflows 대상에 대한 트리거를 만들 때 "트리거 만들기 준비" 섹션의 사용자 관리형 서비스 계정 만들기의 안내를 따르세요.
메시지가 Pub/Sub 주제에 게시되었지만 워크플로 실행이 트리거되지 않는 경우 Eventarc 페이로드가 512KB를 넘지 않는지 확인합니다. 리소스 한도에 대한 자세한 내용은 할당량 및 한도를 참조하세요.
Cloud 콘솔에서 구독 페이지로 이동합니다.
구독에서 미확인 메시지를 모니터링합니다. 자세한 내용은 전달된 전송할 수 없는 메시지 모니터링을 참조하세요.
확인되지 않은 메시지가 있으면
TriggerPubsubExecution
메서드의 워크플로 로그를 모니터링합니다. 워크플로 로그 보기에 대한 자세한 내용은 워크플로 로그 보기를 참조하세요.Permission 'workflows.executions.create' denied
필터를 사용하여 트리거가 워크플로 실행을 트리거할 수 있는 권한이 있는 서비스 계정과 연결되어 있는지 확인합니다. 서비스 계정에 적절한 역할을 부여하는 방법에 대한 자세한 내용은 특정 제공업체, 이벤트 유형, 워크플로 대상에 대한 트리거를 만들 때 "트리거 만들기 준비" 섹션의 안내를 따르세요.- 이벤트 크기가 512KB를 초과하는지 확인하려면
event size exceeded
키워드를 사용합니다.
로그가 기록되지만 이벤트가 전송되지 않으면 지원팀에 문의합니다.