У меня есть функция Lambda в моем VPC, и я хочу получить доступ к корзине S3.
Я правильно установил конечную точку S3 VPC, я думаю,
, потому что я создал экземпляр EC2 вта же подсеть (подсеть лямбда-функции),
использует ту же группу безопасности,
и запускает копию кода функции лямбда,
Может корректно отображать S3содержимое файла.
Но когда я запускаю код в Lambda, он не работает.
Итак, я хочу знать в чем разница между "запустить в EC2" и"запустить в Lambda"?
Почему произошел сбой при запуске в Lambda?
Вот мой код функции Lambda:
import boto3
s3 = boto3.client('s3', region_name='ap-northeast-1')
def lambda_handler(event, context):
bucket = '*xxxxxx*'
key = 's3-upload.json'
try:
response = s3.get_object(Bucket=bucket, Key=key)
print('--------------------------------------')
print(response)
print('--------------------------------------')
body = response['Body'].read()
print(body)
print('--------------------------------------')
print("CONTENT TYPE: " + response['ContentType'])
except Exception as e:
print('Error getting object.')
print(e)
raise e