LoginSignup
18
19

More than 5 years have passed since last update.

【 AWS 】 Lambda関数を作成する方法 ~S3へのファイルアップロードをトリガーにログ出力編~

Last updated at Posted at 2017-10-18

はじめに

Lamba関数を作成しようといろいろ調べてみたが、
GUIのアップデートも早く、現状と同様の画面で作成している手順が見当たらなかったので、
自分の備忘録も含めて、Qiita記事に書き残しておくことにします。

今回実現したいこと

トリガー : S3バケットにファイルがアップロードされる
処理内容 : オブジェクトキーを含めたファイルパスをログに出力

設定方法

1. AWS Lambda設定画面を開き、関数の作成ボタンを押下。

image.png

2. 「一から作成」ボタンを押下

image.png

3. 「カスタムロールの作成」を選択

image.png

4. カスタムロールを作成

3.の操作後、新しいウィンドウで、カスタムロール作成画面が表示されるので、何も設定を変えず作成を行う。

image.png

5. Lamda関数の基本情報を入力

image.png

実行ロールについては、既存のロールを選択し、先ほど作成したロールを選択する。

6. Lamda関数が生成されました

image.png

トリガーが設定されていないので、設定を行います。

7. トリガーの設定

[トリガー]タブの「トリガーを追加」ボタンを押下

image.png

下記、詳細設定になります。

image.png

バケット欄に対象となるバケット名を指定し、「トリガーの有効化」設定を行います。

image.png

9. 実行ソースコードの修正

とりあえず動いていることを確認したいので、
アップロードされたら、バケット名とオブジェクトキーを出力するといった簡易なソースコードを用意します。

image.png

index.js

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のログを表示」というボタンを押下し、
遷移したページにて確認することができます。

image.png

一覧が表示される。

image.png

ログ出力中身確認。

image.png

無事、動作確認することができました。

とにかく動作検証なので、動くところまで、
必要な情報に関しては、今後随時更新していこうと思います。
最後までお読みいただき、ありがとうございました!

18
19
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
19