【Lambda トリガーが作れない】S3をトリガーにしてLambd関数を起動させたいが、できない時の解決方法。

AWS関連

今回はLambda関数のトリガーに関してです。

S3の特定フォルダへのファイルアップロードをトリガーにしたかったのですが、なかなかうまくいかなかったので別の方法を発見しました。

従来の僕がやっていた方法。 Lambda関数からトリガーを追加

今まではトリガーを作成するときには、lambda関数からトリガーを作成していました。

複数トリガーを作成するときにエラーが出てきたりするんですよね。

僕は出てきました。

なので別の方法を使ってトリガーを作成していきます。

方法

本来トリガーとするS3へ移動して、トリガーのバケットまで進んでください。

そこでバケットからプロパティへ移動して下さい。

そして、下へ行くと…

あら、トリガーがこんなところにあるじゃないですか。

イベント通知のところに作成したトリガーがあるんですね。

しかし、Lambdaから作成したトリガーの名前が湧けわからん…

これ複数作った場合には全くわけわからん名前になって消そうにも消せなくなりますよね。

なのでここから作成するんです。

ここから作成することで名前もちゃんと決められます。

なのでここから作成していきましょう。

ここからはLambdaからトリガーを追加する作業と同じです。

Lambda関数の作り方、トリガーの追加方法に関してはこちらを確認ください。↓

s3にファイルがアップロードされたらLambdaをキックして、glueのジョブを動かしてみた

全く同じ用な手順でトリガーを作成することができます!

最後にLambda関数を選ぶところがあるのでそこだけはLambda関数からトリガーを追加する際とは違う点になります。

全て埋めたら「変更の保存」を選択して下さい。

そして、選んだLambda関数を見に行くと、トリガーも勝手に追加されていますね!

まとめ

今回のトリガーの作成方法は、Lambda関数からトリガーを作成する際にうまく作れなかったので見つけた方法でした。

常に方法は一つではないので、いろんな角度から調べてみることでエラーを解決することがわかりました。

改めて、調べる力の大切さを感じることができました。

コメント

タイトルとURLをコピーしました