AWS Lambda編~AWS Lambdaでスケジュールイベントを試してみる~

Pocket

前回は『AWS Lambda編~AWS LambdaでPython対応を試してみる~』と題して、AWS Lambda でPython対応を試してみました。

今回は『AWS Lambda編~AWS Lambdaでスケジュールイベントを試してみる~』と題して、AWS Lambda でスケジュールイベントを試してみたいと思います。

スケジュールイベントについて

re:Invent 2015で発表されたLambdaの機能でLambdaファンクションを一定のスケジュールで実行する事が出来る機能になります。
5分毎などの固定の間隔を指定するかCron 式を指定してスケジュールする事もできます。

試してみる

1.ブループリントの選択
今回はlambda-canaryのブループリントで試してみたいと思います。
lambda-canaryでは特定のサイトの定期的にチェックするテストコードになります。
01

2.イベント設定
Lambdaのイベント設定を行います。
イベントソースがScheduled Eventになっており、Scheduled expressionで時間間隔を設定出来ます。
今回は5分間隔で試してみます。

02

3.ファンクション設定
ファンクション設定を行います。
今回のコードはPythonの為、RuntimeがPython2.7になっているのを確認します。

03

4.ファンクションコード
lambda-canaryのコードを確認してみます。
SITE変数のサイトからEXPECTED変数の文字列が存在するかをチェックします。

04

5.レビュー
レビューで問題無ければ作成を行います。

05

6.テストイベントで実行してみる
テストイベントで実行してみます。

06

Scheduled Eventを選択して実行してみます。

07

正しいSITE変数とEXPECTED変数の為、成功しています。

08

続いて EXPECTED変数を変更して試してみます。
09

変更後の EXPECTED変数は存在しない為、エラーになっているのが分かります。
10

いかがでしたでしょうか?
一定のスケジュールでAWS Lambdaが使える事で定期的な処理等がAWS Lambdaだけで完結する事が出来るようになりますね。

次回は『AWS CloudWatch編~CloudWatch Logsでバッチエクスポートを試してみる~』と題して、AWS CloudWatch Logsでバッチエクスポートを試してみたいと思います。
お楽しみに!!!