Lambda Import Module Error Python

0

I am experiencing an issue with my AWS Lambda function where I'm unable to import the firebase_admin module from a Lambda layer, despite the layer being correctly attached and the module being visibly present in the /opt directory.

  • I have created a Lambda layer that includes the firebase_admin module among others.
  • The layer is attached to my Lambda function.
  • I verified the contents of /opt directory using os.listdir('/opt') in the Lambda function, and it lists firebase_admin and its associated files.
  • Despite this, the Lambda function fails to import the firebase_admin module with an ImportModuleError.

Steps Taken:

  1. Created a Lambda layer with the necessary Python packages, including firebase_admin.
  2. Set correct file permissions (644 for files, 755 for directories) before zipping the layer.
  3. Uploaded the layer to AWS Lambda and attached it to the function.
  4. Verified the presence of the firebase_admin package in the /opt directory through Lambda function logs.
  5. Tried explicitly adding /opt/python to sys.path at the beginning of the Lambda function.

Error Encountered: [ERROR] Runtime.ImportModuleError: Unable to import module 'app': No module named 'firebase_admin'

Are there any additional steps or configurations I might be missing? I also tried resolution mentioned in https://repost.aws/knowledge-center/lambda-import-module-error-python. But I still get the same error.

Enter image description here

MS
질문됨 5달 전361회 조회
1개 답변
1

As can be seen in the documentation here, the content in the layer should not be in the root, but rather, in a subfolder, based on the runtime. In the case of Python, the libraries should be either under python, or python/lib/python3.x/site-packages.

profile pictureAWS
전문가
Uri
답변함 5달 전
profile picture
전문가
검토됨 한 달 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠