AWS Lambda 包部署
AWS Lambda package deployment
我正在尝试将 python .zip 包部署为 AWS Lambda
我选择你好-python足迹
我用内联代码创建了第一个 lambda,之后我尝试更改为从开发 .zip 上传。
我使用的包是一个 .zip,包含一个名为 hello_python.py
的文件,其代码与默认内联代码示例相同,如下所示:
from __future__ import print_function
import json
print('Loading function')
def lambda_handler(event, context):
#print("Received event: " + json.dumps(event, indent=2))
print("value1 = " + event['key1'])
print("value2 = " + event['key2'])
print("value3 = " + event['key3'])
return event['key1'] # Echo back the first key value
#raise Exception('Something went wrong')
点击"save and test"后,没有任何反应,但出现了这个奇怪的红丝带,但没有其他实质性的错误信息。修改源码重新打包上传,日志和运行结果没有任何变化
Lambda 函数需要格式为 <FILE-NAME-NO-EXTENSION>.<FUNCTION-NAME>
的处理程序。在您的情况下,处理程序设置为 lambda_function.lambda_handler
,这是 AWS Lambda 分配的默认值)。但是,您已将文件命名为 hello_python.py
。因此,AWS Lambda 正在寻找名为 lambda_function.py
的 python 文件,但一无所获。
要解决此问题:
- 将您的
hello_python.py
文件重命名为 lambda_function.py
- 将您的 lambda 函数处理程序修改为
hello_python.lambda_handler
您可以在 documentation 中查看其工作原理的示例,他们在文件 hello_python.py
中创建了一个名为 my_handler()
的 python 函数,并且他们创建了一个使用处理程序 hello_python.my_handler
.
调用它的 lambda 函数
我正在尝试将 python .zip 包部署为 AWS Lambda
我选择你好-python足迹
我用内联代码创建了第一个 lambda,之后我尝试更改为从开发 .zip 上传。
我使用的包是一个 .zip,包含一个名为 hello_python.py
的文件,其代码与默认内联代码示例相同,如下所示:
from __future__ import print_function
import json
print('Loading function')
def lambda_handler(event, context):
#print("Received event: " + json.dumps(event, indent=2))
print("value1 = " + event['key1'])
print("value2 = " + event['key2'])
print("value3 = " + event['key3'])
return event['key1'] # Echo back the first key value
#raise Exception('Something went wrong')
点击"save and test"后,没有任何反应,但出现了这个奇怪的红丝带,但没有其他实质性的错误信息。修改源码重新打包上传,日志和运行结果没有任何变化
Lambda 函数需要格式为 <FILE-NAME-NO-EXTENSION>.<FUNCTION-NAME>
的处理程序。在您的情况下,处理程序设置为 lambda_function.lambda_handler
,这是 AWS Lambda 分配的默认值)。但是,您已将文件命名为 hello_python.py
。因此,AWS Lambda 正在寻找名为 lambda_function.py
的 python 文件,但一无所获。
要解决此问题:
- 将您的
hello_python.py
文件重命名为lambda_function.py
- 将您的 lambda 函数处理程序修改为
hello_python.lambda_handler
您可以在 documentation 中查看其工作原理的示例,他们在文件 hello_python.py
中创建了一个名为 my_handler()
的 python 函数,并且他们创建了一个使用处理程序 hello_python.my_handler
.