投稿日: Aug 30, 2018

AWS サーバーレスアプリケーションモデル (SAM) コマンドラインインターフェイスを使用すると、AWS SAM テンプレートで定義されたサーバーレスアプリケーションをローカルでビルド、テスト、およびデバッグできます。SAM CLI を用いて Go で書かれた Lambda 関数を、Java、Python、Node.js で書かれたものに加えてデバッグできるようになりました。また sam local generate-event コマンドを用いて 50 を越すイベントに対してサンプルイベントペイロードを生成できるようにもなりました。

最近の SAM CLI のリリースは Go プログラム言語のデバッガーである Delve と統合し、関数をローカルなデバッグモードで実行することで、より早く問題を発見できるようになりました。Lambda 関数をデバッグモードでローカルで実行するには、sam local invoke コマンドを -d オプションと共に使ってください。

sam local generate-event コマンドに対するこのアップデートで、50 を越すイベントからのサンプルペイロードを生成、カスタマイズできるようになり、これには Amazon CloudFront、AWS CloudFormation、AWS Step Functions、Amazon Alexa からのものを含み、Amazon S3、Amazon Kinesis Streams、Amazon DynamoDB、Amazon CloudWatch Scheduled Events、Amazon API Gateway、Amazon SNS からのものに加わりました。また各サービスからのイベントの複数のタイプも生成できます。例えば、新規オブジェクトを生成するときの S3 からのイベントの生成に加えて、オブジェクトを削除するときの S3 からのイベントも生成できます。このためイベントをシミュレーションしてテストとデバッグを高速で行えます。

SAM CLI の使用を開始するには、pip install aws-sam-cli コマンドを使用して SAM CLI をインストールします。SAM CLI は、AWS Cloud9、Visual Studio Code、Eclipse といった IDE で使用することもできます。SAM CLI を使用してサーバーレスアプリケーションを構築、テスト、およびデプロイする方法については、AWS のドキュメントと GitHub のコードポジトリを参照してください。また、SAM の開発に貢献するには、Slack 上の SAM コミュニティ にご参加ください。