Why?
- Lambda の練習用
- S3 のイベントを拾う
- ログに書き込む
- 特に他のサービスと連携しない
Code
- Handler: logS3.handler
- Add event source: S3のPutイベントを拾う
- IAM: Putイベントを拾う対象のReadイベントが必須
console.log('Load Lambda function');
var AWS = require('aws-sdk');
exports.handler = function (event, context) {
console.log("Received event");
var bucket = event.Records[0].s3.bucket.name;
var object = event.Records[0].s3.object.key;
console.log("bucket name: " + bucket + " / object key: " + object);
console.log("done");
};
Result
- Monitor tabでinvoke確認
- Cloud watch でログを確認
bucket name: for-lambda-test2 / object key: hoge.jpg
github.com