团队 -
这是我的问题:
START RequestId: 3ef6bbb9-62da-11e8-82ba-81e0afb0b224 Version: $LATEST
Unable to import module 'lambda_insertEmailAddress': No module named psycopg2
END RequestId: 3ef6bbb9-62da-11e8-82ba-81e0afb0b224
REPORT RequestId: 3ef6bbb9-62da-11e8-82ba-81e0afb0b224 Duration: 0.44 ms Billed Duration: 100 ms Memory Size: 128 MB Max Memory Used: 19 MB
我的zip文件具有以下结构file name: lambdaInsertEmail.zip
:
total 98784
drwxrwxrwx 20 chauncey staff 680B May 27 13:22 psycopg2
drwxrwxrwx 22 chauncey staff 748B May 27 12:55 postgresql-9.4.3
-rwxrwxrwx 1 chauncey staff 1.8K Apr 30 15:41 lambda_insertEmailAddress.py
-rw-r--r-- 1 chauncey staff 48M May 30 12:09 lambdaInsertEmail.zip
如果您想知道我的setup.cfg文件有以下更改:
pg_config=/Users/chauncey/Desktop/portfolio/aws_lambda_files/lambda_insertEmailAddress/postgresql-9.4.3/src/bin/pg_config/pg_config
static_libpq=1
我正在尝试让这个lambda函数正常工作。请帮忙。
答案 0 :(得分:1)
问题正在引起因为psycopg2
需要构建一个使用静态链接库编译的Linux。有关此问题的详细信息,请参阅Using psycopg2 with Lambda to Update Redshift (Python)。在OSX上编译psycopg2
的另一个reference问题。
一个解决方案是使用Amazon Linux AMI编译库。使用SSH连接到AMI后:
sudo su -
pip install psycopg2 -t /path/to/project-dir
zip project-dir.zip project-dir
希望这有助于您了解问题和可能的解决方案。上述参考文献中还有其他解决方案,例如使用boto3
或此回购https://github.com/jkehler/awslambda-psycopg2,但这是适合我的解决方案。
答案 1 :(得分:1)
pip install psycopg2-binary
帮我修好了