#serverless-framework
#бессерверный фреймворк
Вопрос:
Я пытаюсь отладить в Visual Studio код обработчика событий динамического потока. Могу ли я подключить свою локальную бессерверную автономную программу к потокам развернутого DynamoBD? Я перепробовал много способов, но мой обработчик не был запущен .
На данный момент я использую бессерверные-автономные-dynamodb-потоки, и я добавил:
Plugins
- serverless-offline-dynamodb-streams
- serverless-offline
И я подключил свою функцию к удаленному ресурсу (arn):
functions:
myKinesisHandler:
handler: handler.compute
events:
- stream:
enabled: true
type: dynamodb
arn: arn:aws:dynamodb:eu-west-1:XXXXXX:table/myStream/stream/2018-07-02T19:48:31.121
batchSize: 10
startingPosition: TRIM_HORIZON
И добавлена следующая пользовательская конфигурация :
custom:
serverless-offline-dynamodb-streams:
apiVersion: '2013-12-02'
endpoint: http://0.0.0.0:8000
region: eu-west-1
accessKeyId: root
secretAccessKey: root
skipCacheInvalidation: false
readInterval: 500
Я запускаю свое приложение с:
sls offline
Но все же мне не удалось запустить мой обработчик.. Есть идеи о том, что я делаю не так?
Ответ №1:
К сожалению, нет способа передать событие потока DDB на ваш локальный бессерверный автономный сервер. AWS полностью контролирует эту интеграцию.
Иногда, когда я сталкиваюсь с этой проблемой, я:
- Убедитесь, что лямбда-выражение правильно запускается событием потока DDB
- Если это так, скопируйте событие потока, которое я ожидал увидеть, и сохраните его как файл JSON
- Используется
sls invoke local --data "{yourJSON}"
для ручного запуска вашей лямбда-функции (документы здесь).
Оттуда вы должны иметь возможность отлаживать.