AWS Lambda Python 배포 패키지를 생성하고 있습니다. 하나의 외부 종속성 요청을 사용하고 있습니다. AWS 설명서 http://docs.aws.amazon.com/lambda/latest/dg/lambda-python-how-to-create-deployment-package.html을 사용하여 외부 종속성을 설치했습니다 . 아래는 내 파이썬 코드입니다.
import requests
print('Loading function')
s3 = boto3.client('s3')
def lambda_handler(event, context):
#print("Received event: " + json.dumps(event, indent=2))
# Get the object from the event and show its content type
bucket = event['Records'][0]['s3']['bucket']['name']
key = urllib.unquote_plus(event['Records'][0]['s3']['object']['key']).decode('utf8')
try:
response = s3.get_object(Bucket=bucket, Key=key)
s3.download_file(bucket,key, '/tmp/data.txt')
lines = [line.rstrip('\n') for line in open('/tmp/data.txt')]
for line in lines:
col=line.split(',')
print(col[5],col[6])
print("CONTENT TYPE: " + response['ContentType'])
return response['ContentType']
except Exception as e:
print(e)
print('Error getting object {} from bucket {}. Make sure they exist and your bucket is in the same region as this function.'.format(key, bucket))
raise e
project-dir 디렉터리의 내용을 Zip으로 만들고 람다에 업로드했습니다 (디렉터리가 아닌 디렉터리 내용을 압축). 함수를 실행할 때 아래에 언급 된 오류가 발생합니다.
START RequestId: 9e64e2c7-d0c3-11e5-b34e-75c7fb49d058 Version: $LATEST
**Unable to import module 'lambda_function': No module named lambda_function**
END RequestId: 9e64e2c7-d0c3-11e5-b34e-75c7fb49d058
REPORT RequestId: 9e64e2c7-d0c3-11e5-b34e-75c7fb49d058 Duration: 19.63 ms Billed Duration: 100 ms Memory Size: 128 MB Max Memory Used: 9 MB
오류를 디버깅 할 수 있도록 도와주세요.
import lambda_function
찾을 수없는 무언가를 원하는 것 같습니다 . 아마도 당신은 원from future import lambda_function
하십니까? 또는 cmd 줄에 lambda_function 을 설치하십시오 .