投稿日: Aug 30, 2018

AWS Serverless Application Model (SAM) Command Line Interface (CLI) を使用すると、AWS SAM テンプレートで定義されたサーバーレスアプリケーションをローカルで構築、テスト、およびデバッグできます。SAM CLI を使用して、Java、Python、Node.js で記述されたものに加えて、Go で記述された Lambda 関数をデバッグできるようになりました。また、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 コミュニティにご参加ください。

変更 (2021 年 12 月 9 日) - 優れたエクスペリエンスを保証する取り組みの一環として、この記事の期限切れリンクを更新、または元の記事から削除しました。