我知道你想通过控制台来解决问题,但这是不可能的(就我所知)。
为了解决这个问题,你需要向Lambda提供所需的boto3版本(可以使用
user1998671提出的解决方案或
Shivang Agarwal所建议的方法)。第三种解决方案是将所需的boto3版本作为Lambda的一层提供。将它作为一层的好处是你可以在所有的Lambda函数中重用它。
按照
AWS指南进行操作即可实现该功能(下面的内容主要来自AWS的链接指南):
重要提示:确保将“boto3-mylayer”更改为适合您的名称。
- 通过运行以下命令创建一个lib文件夹:
LIB_DIR=boto3-mylayer/python
mkdir -p $LIB_DIR
在运行以下命令将库安装到LIB_DIR:
pip3 install boto3 -t $LIB_DIR
运行以下命令将所有依赖项压缩到
/tmp/boto3-mylayer.zip
中:
cd boto3-mylayer
zip -r /tmp/boto3-mylayer.zip .
运行以下命令发布该图层:
aws lambda publish-layer-version --layer-name boto3-mylayer --zip-file fileb:///tmp/boto3-mylayer.zip
该命令返回新图层的Amazon资源名称(ARN),类似于以下内容:
arn:aws:lambda:region:$ACC_ID:layer:boto3-mylayer:1
要将此层附加到您的 Lambda,请执行以下操作:
aws lambda update-function-configuration --function-name <name-of-your-lambda> --layers <layer ARN>
要在Lambda中验证boto版本,您只需在Lambda中添加以下两个打印命令:
print(boto3.__version__)
print(botocore.__version__)