Я пытаюсь импортировать psycopg2 в мою функцию python 3.6 lambda, но я продолжаю работать в сообщении об ошибке 'Unable to import module 'lambda_function': /var/task/psycopg2/_psycopg.cpython-36m-x86_64-linux-gnu.so: ELF file phentsize not the expected size'
Я загружаю zip файл непосредственно в лямбда-функцию через консоль AWS. Я пробовал использовать библиотеку https://github.com/jkehler/awslambda-psycopg2, но он дал мне то же сообщение.
Мне удалось успешно запустить мой сценарий на экземпляре EC2 (Amazon Linux AMI 2018.03.0 (HVM)), и я даже попытался загрузить библиотеку psycopg2 экземпляра EC2 на лямбда, но я все равно продолжаю получать то же сообщение об ошибке,
Любая помощь будет оценена по достоинству.
Я столкнулся с этой проблемой, пытаясь загрузить.zip, содержащий мою Lambda. Проблема для меня заключалась в том, что я сжимал свою Лямбду из одного каталога выше.
В решении была запущена zip-команда в каталоге, содержащем функцию Lambda, в отличие от запуска zip из его родительского каталога.
Например, если ваша лямбда-функция существует в каталоге ~/lambda как lambda_function.py вместе с любыми дополнительными библиотеками (т.е. Многопроцессорными), вы должны заархивировать свой пакет развертывания Lambda, выполнив следующее.
$ cd ~/lambda
$ zip lambda_function.zip lambda_function.py
$ zip -r lambda_function.zip multiprocessing*
Загрузка результирующего файла.zip должна устранить эту проблему.