#python #amazon-web-services #aws-lambda #amazon-cloudwatch
#python #amazon-веб-сервисы #aws-lambda #amazon-cloudwatch
Вопрос:
Параметр тестовых событий в консоли aws lambda был сохранен как dict в configure test events
:
{"key1":5,
"name1":"stud1",
"key2":3,
"name2":"stud2"}
Доступ к нему осуществляется как к событию[‘key1’] или событию[‘name1’] в лямбда-функции. При тестировании с помощью консоли, кажется, все работает нормально. Но при планировании с использованием cloudwatch функция регистрирует key error
событие with[«] . Как получить доступ к параметрам тестовых событий с помощью cloudwatch
Ответ №1:
Возможность «тестовых событий» является чисто функцией консоли Lambda.
При вызове функции любым другим способом лямбда-функция получит «реальное» событие.
Для функции AWS Lambda, запускаемой расписанием Amazon CloudWatch, CloudWatch предоставит событие, подобное этому:
{
"id": "cdc73f9d-aea9-11e3-9d5a-835b769c0d9c",
"detail-type": "Scheduled Event",
"source": "aws.events",
"account": "123456789012",
"time": "1970-01-01T00:00:00Z",
"region": "ap-southeast-2",
"resources": [
"arn:aws:events:ap-southeast-2:123456789012:rule/ExampleRule"
],
"detail": {}
}
При настройке целевого объекта в правиле событий CloudWatch в событие можно передать дополнительную информацию, такую как константу, которая затем может быть использована лямбда-функцией.
Итог: тестовое событие предназначено только для тестирования в консоли.