我正在尝试添加
psycopg2
添加为 Lambda 层,但当我测试 Lambda 函数时,它给出了此错误:
{
"errorMessage": "Unable to import module 'lambda_function': No module named 'psycopg2'",
"errorType": "Runtime.ImportModuleError",
"requestId": "",
"stackTrace": []
}
哪里可以找到psycopg2针对AWS环境的编译版本?
我尝试从 https://github.com/jkehler/awslambda-psycopg2v 下载并压缩 3.11 psycopg2 版本,并将此 zip 作为 Lambda 层添加到 AWS 中。运行时版本是相同的。
您不需要 AWS 环境的任何特定版本。只需按照以下步骤操作即可。
1 - 在本地系统上创建虚拟 python 环境。假设您将其命名为“项目”。
2 - 激活新创建的环境并使用 pip install psycopg2
在其中安装 psycopg23 - 将你的主要 python 处理程序(假设它是 lambda_function.py)放在项目目录中
4 - 创建项目目录的 zip 文件并将其作为 lambda 函数上传
确保您的处理程序(lambda_function.py)以以下代码行开头
import os
import sys
CWD = os.path.dirname(os.path.realpath(__file__))
sys.path.insert(0, os.path.join(CWD, "Lib"))
import psycopg2
希望这有帮助!