2015-11-20 15 views
5

sto facendo tutti i passi che sono menzionati nel seguente documento: http://docs.aws.amazon.com/lambda/latest/dg/lambda-python-how-to-create-deployment-package.htmlQual è il modo corretto per aggiungere panda/scikit-learn pacchetti al progetto per l'utilizzo in AWS lambda

Sono EC2 di Amazon usign con Amazon Linux su di esso per costruire il pacchetto.

Ho anche provato a fare passi menzionati nella https://markn.ca/2015/10/python-extension-modules-in-aws-lambda/

In seguito è l'errore che ottengo quando il pacchetto viene caricato per AWS lambda ed eseguire:

START RequestId: cbfe0762-8f1b-11e5-9a1d-49fb4d3a0d13 Version: $LATEST 
Unable to import module 'test': No module named pandas 

END RequestId: cbfe0762-8f1b-11e5-9a1d-49fb4d3a0d13 
REPORT RequestId: cbfe0762-8f1b-11e5-9a1d-49fb4d3a0d13 Duration: 0.35 ms Billed Duration: 100 ms  Memory Size: 128 MB Max Memory Used: 23 MB 

L'errore non dà alcun indicazione specifica

Modifica con maggiori dettagli:

Hi @maxymoo

sto solo creando la zip dei contenuti. Non la cartella che contiene il file .py. Quando provo ad aggiungere il pacchetto "richieste" con il mio file .py, funziona bene. Ora quando provo ad aggiungere il pacchetto "panda" con il mio file .py, questo mi dà l'errore sopra riportato.

seguenti sono i punti che sto seguendo:

  1. Connetti a EC2 con Amazon linux eseguirlo.

  2. inizio virtualenv

  3. installare panda utilizzando "PIP installare panda"

  4. vai a Directory "/home/ec2-user/t1/lib/python2.7/site-packages"

  5. prendere tutti i contenuti di "/home/ec2-user/t1/lib/python2.7/site-packages" aggiungere il mio file test.py ad esso e creare il file zip

  6. caricare il file zip amazon lambda

  7. prova Run

ottengo il seguente errore:

START RequestId: feee67de-8f2f-11e5-bc34-bd42a1d7326b Version: $LATEST 
Unable to import module 'test': No module named pandas 

END RequestId: feee67de-8f2f-11e5-bc34-bd42a1d7326b 
REPORT RequestId: feee67de-8f2f-11e5-bc34-bd42a1d7326b Duration: 0.34 ms Billed Duration: 100 ms  Memory Size: 128 MB Max Memory Used: 29 MB 

Il contenuto di test.py è:

import json 

import requests 

import pandas as pd 


print('Loading function') 


def lambda_handler(event, context): 

    #print("Received event: " + json.dumps(event, indent=2)) 

    print("value1 = " + event['key1']) 

    print("value2 = " + event['key2']) 

    print("value3 = " + event['key3']) 

    return event['key1'] # Echo back the first key value 

    #raise Exception('Something went wrong') 

Di seguito sono riportati i file nel file zip :

drwxrwxr-x 52 pds staff  1768 Nov 19 17:09 setuptools 

drwxrwxr-x 32 pds staff  1088 Nov 19 17:09 requests 

drwxrwxr-x 34 pds staff  1156 Nov 19 17:10 pip 

drwxrwxr-x 11 pds staff  374 Nov 19 17:10 setuptools-12.0.5.dist-info 

drwxrwxr-x 10 pds staff  340 Nov 19 17:10 pip-6.0.8.dist-info 

drwxrwxr-x 8 pds staff  272 Nov 19 17:10 requests-2.8.1.dist-info 

drwxrwxr-x 6 pds staff  204 Nov 19 17:10 pkg_resources 

drwxrwxr-x 6 pds staff  204 Nov 19 17:10 _markerlib 

[email protected] 1 pds staff  374 Nov 19 17:15 test.py 

-rw-r--r-- 1 pds staff 3912745 Nov 19 17:16 Archive.zip 

-rw-r--r-- 1 pds staff  315 Nov 19 18:09 easy_install.pyc 

drwxrwxr-x 9 pds staff  306 Nov 19 18:09 pytz-2015.7.dist-info 

-rw-r--r-- 1 pds staff 30098 Nov 19 18:10 six.py 

-rw-r--r-- 1 pds staff  126 Nov 19 18:10 easy_install.py 

drwxrwxr-x 8 pds staff  272 Nov 19 18:11 six-1.10.0.dist-info 

drwxrwxr-x 15 pds staff  510 Nov 19 18:11 pytz 

drwxrwxr-x 9 pds staff  306 Nov 19 18:11 python_dateutil-2.4.2.dist-info 

-rw-r--r-- 1 pds staff 29545 Nov 19 18:11 six.pyc 

drwxrwxr-x 17 pds staff  578 Nov 19 18:11 dateutil 
+0

qual è la struttura della directory? hai accidentalmente chiuso la cartella del progetto stessa piuttosto che il contenuto della cartella? – maxymoo

+0

Ciao @maxymoo ho aggiunto i dettagli rilevanti alla domanda stessa.Ho solo zippato i file sotto la directory principale. Il contenuto del file zip è menzionato nella domanda. C'era una restrizione di carattere nel commento, quindi ho modificato la domanda. –

risposta

0

Non vedo la directory panda. È in "Archive.zip"? In tal caso potrebbe essere necessario decomprimerlo nella cartella principale del progetto prima di zippare i file di progetto.

Speriamo che questo aiuti.