AWS Lambda(Python3.9.10)から別のLambdaを呼び出す
Lambda(Python)からLambda(Python)を呼び出します。
呼び出す側のLambda(Python3.9.10)
python2python
import json
import boto3
def lambda_handler(event, context):
response = boto3.client('lambda').invoke(
FunctionName = 'python-template',
InvocationType='RequestResponse'
)
print(response)
return {
'statusCode': 200,
'body': json.dumps('Hello from Lambda!')
}
FunctionNameでLambda名を指定します。
InvocationTypeは以下を指定することが出来ます。
| InvocationType | 意味 |
|---|---|
| RequestResponse | 同期処理 |
| Event | 非同期処理 |
インラインポリシー作成し、許可を追加します。123456789012はアカウントIDです。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement1",
"Effect": "Allow",
"Action": "lambda:InvokeFunction",
"Resource": "arn:aws:lambda:*:123456789012:function:*"
}
]
}
呼び出される側のLambda(Python3.9.10)
python-template.py
import json
def lambda_handler(event, context):
# TODO implement
return {
'statusCode': 200,
'body': json.dumps('Hello from Lambda!')
}
テスト
呼び出す側のLambdaの「テスト」を実行します。
呼び出される側のCloudWatchログを見ると、ログ出力されますので実行されたことが確認できます。

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES20xx),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
