- 新しい順
- 投票が多い順
- コメントが多い順
SQSのキューポリシーを共有いただくことは可能でしょうか?
S3からほかの送信先だと機能しているというところからキューポリシーに何かしら誤りがあって機能していない可能性があると思いました。
S3からSQSへのイベント通知が発火されない問題について、いくつかの確認点と対策を提案します。
-
S3バケットの通知設定を再確認してください:
- イベントタイプが正しく「すべてのオブジェクト作成イベント」に設定されているか
- プレフィックスとサフィックスのフィルターが正確に設定されているか({dir_name}/ と .pdf)
-
SQSキューのポリシーを再確認してください:
- S3バケットからのメッセージ受信を許可する正しいポリシーが設定されているか
- ポリシーにS3バケットのARNが正確に記載されているか
-
S3バケットとSQSキューが同じリージョンにあることを確認してください。
-
S3バケットの所有者とSQSキューの所有者が同じAWSアカウントであることを確認してください。
-
オブジェクトのアップロード方法を確認してください:
- マルチパートアップロードを使用している場合、完了イベントのみが発生する可能性があります
-
イベント通知の設定後、テスト用のPDFファイルを指定したディレクトリにアップロードして、通知が発生するか確認してください。
-
CloudTrailログを確認して、S3からのイベント発行が行われているか確認してください。
-
AWS CLIやAWS SDKを使用して、S3バケットの通知設定を直接取得し、設定が正しく適用されているか確認してください。
-
SQSキューの可視性タイムアウトやメッセージ保持期間が適切に設定されているか確認してください。
-
S3イベント通知の設定を一度削除し、再度作成してみてください。
これらの確認と対策を行っても問題が解決しない場合は、AWSサポートに連絡して詳細な調査を依頼することをお勧めします。
Sources
AWSSupport-TroubleshootS3EventNotifications - AWS Systems Manager Automation runbook reference
Event message structure - Amazon Simple Storage Service
関連するコンテンツ
- 質問済み 10ヶ月前
- 質問済み 8ヶ月前
- 質問済み 8ヶ月前

回答ありがとうございます。 キューポリシーですが以下になります。
私の環境で同じポリシーを設定して試してみました。(アカウントIDやリソース名は変更しています) S3バケットの「dir_nam3」フォルダ内にpdfファイルを配置することでSQSキューにメッセージが溜まることが確認できています。
SQSキューのメトリクスで受信済みのメッセージ数や削除されたメッセージ数などは確認できますでしょうか? もし削除されたメッセージ数のメトリクスが上がっているようでしたらメッセージが何かしら (Lambdaなど) で処理されているのでそちらの確認が必要です。 ちなみにSQSのターゲットにLambdaを紐づけるとキューにメッセージが送信された際に処理が行われてLambdaが正常終了するとキュー内のメッセージが消えます。
確認ありがとうございます。 手元でも同様の確認をしたところ、メッセージは受信しており、lambdamで要求が飛んでいることは確認できました。 問題はSQSでなくlambda側ということが核にできました。 ありがとうございます。