はじめに
Lamba関数を作成しようといろいろ調べてみたが、
GUIのアップデートも早く、現状と同様の画面で作成している手順が見当たらなかったので、
自分の備忘録も含めて、Qiita記事に書き残しておくことにします。
今回実現したいこと
トリガー : S3バケットにファイルがアップロードされる
処理内容 : オブジェクトキーを含めたファイルパスをログに出力
設定方法
1. AWS Lambda設定画面を開き、関数の作成ボタンを押下。
2. 「一から作成」ボタンを押下
3. 「カスタムロールの作成」を選択
4. カスタムロールを作成
3.の操作後、新しいウィンドウで、カスタムロール作成画面が表示されるので、何も設定を変えず作成を行う。
5. Lamda関数の基本情報を入力
実行ロールについては、既存のロールを選択し、先ほど作成したロールを選択する。
6. Lamda関数が生成されました
トリガーが設定されていないので、設定を行います。
7. トリガーの設定
[トリガー]タブの「トリガーを追加」ボタンを押下
下記、詳細設定になります。
バケット欄に対象となるバケット名を指定し、「トリガーの有効化」設定を行います。
9. 実行ソースコードの修正
とりあえず動いていることを確認したいので、
アップロードされたら、バケット名とオブジェクトキーを出力するといった簡易なソースコードを用意します。
console.log('Loading function');
exports.handler = function(event, context) {
var Bucket = event.Records[0].s3.bucket.name;
var ObjKey = event.Records[0].s3.object.key;
var FilePath = Bucket + '/' + ObjKey;
console.log('BucketName : ' + Bucket);
console.log('ObjKey : ' + ObjKey);
console.log('FilePath : ' + FilePath);
};
「 Ctrl + S 」で保存し、指定のS3バケットにファイルをアップロードしてみてください。
10. ログ出力の確認
ログの確認は、 [モニタリング] タブの中にある、「CloudWatchのログを表示」というボタンを押下し、
遷移したページにて確認することができます。
一覧が表示される。
ログ出力中身確認。
無事、動作確認することができました。
とにかく動作検証なので、動くところまで、
必要な情報に関しては、今後随時更新していこうと思います。
最後までお読みいただき、ありがとうございました!