AWSのLambda(ラムダ)でPythonのhello worldを実行するサンプルです。
目次
サンプル | LambdaでPythonのhello worldを実行する概要 |
Lambdaでコードを作成する | |
PythonでHello Worldのコードを作成する | |
コードを実行する |
Lambdaでpythonのhello worldを実行する概要
- Lambda(ラムダ)は、サーバーレスでプログラムを実行できます。
→通常であればサーバーを立ててOSを導入してその上にプログラムをインストールしますがLambdaではプログラムをそのまま使用できます。 - 使用できるプログラミング言語は、C#,PowerShell,Go,Java,Node.js,Python,Ruby等あります。
Lambdaでコードを作成する
1.検索入力欄で「Lambda」と入力し、表示された「Lambda」をクリックします。
2.「関数の作成」ボタンをクリックします。
3.関数の作成では「一から作成」を選択します。
4.関数名は、Test-HelloとしランタイムはPython 3.9を選択しました。
5.アーキテクチャは、x86_64を選択しました。
6.完成後、画面を下にスクロールするとコードがあります。
PythonでHello Worldのコードを作成する
1.フォルダを右クリックしNew Fileを選択しtest_hello.pyというファイルを作成しました。
2.test_hello.pyに以下のコードを作成します。
def hello():
return "Hello World Test"
3.lambda_function.pyは、以下のように修正します。
import json
import test_hello as he
def lambda_handler(event, context):
str = he.hello()
return {
'statusCode': 200,
'body':json.dumps(str),
'json1':event['key1']
}
2行目は、作成した関数をimportしています。
6行目は、関数を実行し9行目で表示します。
10行目は、JSONの初期パラメータ(後述)があるのでそれも取得してみます。
3.Testをクリックします。「テストイベントを設定」が表示されます。
※またはTestの右横の三角のアイコンをクリックし「Configure test event」を選択します。
「新しいイベントを作成」を選択し、イベント名を入力します。
4.イベント共有の設定は、プライベートを選択し、テンプレートオプションは作成したhello-world、イベントJSONはデフォルトのままにしておきます。
このJSONの1つめの値は、lambda_function.pyの10行目で取得します。
5.保存ボタンを押します。
コードを実行する
コードを実行するときは、「Deploy」をクリックしてから「Test」をクリックします。
コードを変更してDeployをしていないときは、右側にChanges not deployed(変更がありますがデプロイされていません)が表示されます。
Deploy後にTestするとエラーがない場合以下のように表示されます。
Responseのbodyの箇所に作成したHello Worldが表示されています。
その下の行のjson1は、入力パラメータの1つめを表示しています。
実行結果のログは、CloudWatchでも確認できます。
関連の記事