Добавлен пользовательский уровень lambda, вызывающий ошибку авторизации SSL при вызове AWS S3

#python #amazon-web-services #amazon-s3 #aws-lambda #aws-lambda-layers

#python #amazon-веб-сервисы #amazon-s3 #aws-lambda #aws-lambda-layers

Вопрос:

Я создал лямбда-слой для AWS lambda в Python 3.8, однако он вызывает ошибку авторизации SSL при вызове S3 в моей лямбда-функции (хотя никакие пакеты в лямбда-слое не импортируются в основную лямбда-функцию)

Следующий код выполнен успешно, когда не добавлен лямбда-слой, но не удался при добавлении моего пользовательского лямбда-слоя.

 import boto3

def lambda_handler(event, context):
    c1 = boto3.client("s3")
    lst = c1.list_buckets()
    print(lst)
    return {
        'statusCode': 200,
        'body': 'Hello from Lambda!'
    }
  

ОБРАТИТЕ внимание, что я даже не импортировал свой пакет здесь

Что может быть потенциальной причиной, как мне следует отлаживать в этом случае?

Комментарии:

1. понятия не имею, в чем проблема, но попробуйте отладить перенос кода с помощью try … за исключением, может быть

2. попробуйте использовать Node. Js runtime и проверьте, работает ли он или нет. А также проверьте журналы наблюдения за облаком.

Ответ №1:

Похоже, что некоторые пакеты, которые автоматически генерируются в виртуальных средах Python, конфликтуют с тем, что использует AWS Lambda. После удаления этих автоматически сгенерированных пакетов и сохранения только необходимых пакетов (методом проб и ошибок) я смог загрузить свой пакет в AWS Lambda.