我有一个AWS Lambda,它可以从S3中获取图像并将其复制到Azure blob存储中。
我的代码的开始看起来像这样:
import json
import boto3
# from azure.storage.blob import BlockBlobService, PublicAccess
from pymongo import MongoClient
import bson
from urllib.parse import unquote
from datetime import datetime
import pytz
import logging
这段代码运行良好。当我取消注释蔚蓝存储线以获取以下信息时:
import json
import boto3
from azure.storage.blob import BlockBlobService, PublicAccess
from pymongo import MongoClient
import bson
from urllib.parse import unquote
from datetime import datetime
import pytz
import logging
我现在得到:
Response:
{
"errorMessage": "Unable to import module 'lambda_function': libffi-d78936b1.so.6.0.4: cannot open shared object file: No such file or directory",
"errorType": "Runtime.ImportModuleError"
}
为什么导入Azure库会导致整个lambda_handler无法正常工作?我已将所有其他库成功包含在AWS Lambda层中,因此它确实存在。当我注释掉这行代码时,整个Lambda都运行良好,这是怎么回事?
如果导入azure.storage.blob时遇到问题,它会说“无法导入模块azure.storage.blob”吗?
由于Lambda图层中不存在该库,您会收到此错误。请尝试重新配置您的图层,或者尝试创建一个部署程序包。请参阅此文档,以了解如何为Lambda函数创建部署包。
正如Atul Kumar在评论中提到的那样,您也可以看看这个StackOverflow问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句