이 페이지에서는 Workflows용 Eventarc를 사용할 때 발생할 수 있는 문제를 해결하는 방법을 보여줍니다.
발생할 수 있는 다른 문제는 다음 문제해결 페이지를 참조하세요.
워크플로 대상이 없으므로 트리거 생성 실패
다음과 유사한 오류 메시지가 표시됩니다.
cloud workflow "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_ID" does not exist
PROJECT_ID
: Google Cloud 프로젝트 IDLOCATION
: 워크플로의 위치WORKFLOW_ID
: 워크플로의 이름
Eventarc에서 대상 워크플로를 찾을 수 없는 경우 발생합니다. 이 문제를 해결하려면 다음 안내를 따르세요.
대상 워크플로가 존재하고 ACTIVE 상태인지 확인합니다.
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
키워드를 사용합니다.
로그가 기록되지만 이벤트가 전송되지 않으면 지원팀에 문의합니다.