質問: lambda を実行すると、手元でハンドラ (の関数) を直接実行した場合とは、若干違う挙動をするために、その微妙な挙動にはまって時間を浪費する、ということがしばしばあります。 python を lambda で動かそうとしているのですが、例えば以下の挙動に遭遇しています。 * pip パッケージがデプロイ先に含まれていないので、 package が import できずにエラー * file permission が 600 であった場合に、 lambda ではこのパーミッションでは読み込めずに import できずにエラー * logging モジュールの挙動が手元と違う(原因調査中) など。 --- lambda に実際デプロイして、その先で実行を行い、ログを cloud watch などから探し出すのは、手間です。 ローカルから、 lambda の実行環境を(できるかぎり)再現してテストする方法などはありますか?
回答: emulambda があります。 Amazon の物ではなく、Fugue 社が作っている物のようです。 Google Cloud Functions だと公式で Google Cloud Functions Emulatorがあります。 (あ、似た物という事で出しましたが、これは Python ではなかったですね。さらに離れますが、Google App Engine もローカル環境が公式に提供されています)