Я использую AWS с SAM CLI для развертывания и тестирования лямбда-функций AWS, написанных на dotnetcore2.1.
Запуск базового helloworld:
sam build
sam local invoke HelloWorldFunction -e .\events\event.json > output.txt
Сам терминал выдаетyou:
Invoking HelloWorld::HelloWorld.Function::FunctionHandler (dotnetcore2.1)
2019-11-10 10:38:57 Found credentials in shared credentials file: ~/.aws/loginusercredentials
Fetching lambci/lambda:dotnetcore2.1 Docker container image......
Mounting C:\Users\Dim\Dropbox\Projects\Active\2019-11-02 VSCode\ServerLessAPI\.aws-sam\build\HelloWorldFunction as /var/task:ro,delegated inside runtime container
START RequestId: 3e241658-9574-4580-896a-70e0ab18816e Version: $LATEST
END RequestId: 3e241658-9574-4580-896a-70e0ab18816e
REPORT RequestId 3e241658-9574-4580-896a-70e0ab18816e Duration: 2033 ms Billed Duration: 2100 ms Memory Size 128 MB Max Memory Used: 45 MB
output.txt должен дать вам:
{"statusCode":200,"headers":{"Content-Type":"application/json"},"multiValueHeaders":null,"body":"{\"message\":\"hello world\",\"location\":\"119.214.83.148\"}","isBase64Encoded":false}
Однако с сегодняшнего дня в output.txt я получаю следующее:
{"statusCode":200,"headers":{"Content-Type":"application/json"},"multiValueHeaders":null,"body":"{\"message\":\"hello world\",\"location\":\"119.214.83.148\"}","isBase64Encoded":false}NULNULNULNULNULNULNUL...
Сгенерированный текстовый файл имеет размер ~ 12 МБ и содержит ~ 6-7 миллионов столбцов с правильным выводом, за которым следует множество NUL. Когда я тестирую функцию без отправки в файл output.txt, интерфейс командной строки AWS SAM сообщает об этом как об истечении времени ожидания, несмотря на то, что изначально был получен правильный ответ, только многие NUL разрушают его.
Загрузка точно такой же функции в AWS Lambda работает без проблем, но, очевидно, это гораздо более медленный способ разработки вещей (не говоря уже о том, чтобы не выполнять отладку). Я пробовал это на 3 разных функциях AWS Lambda и получаю одинаковые результаты, поэтому возникает проблема с AWS SAM или Docker.
Другая информация - Версия для Windows: версия 10.0.18362Build 18362 - Версия Docker Desktop: Стабильный: 2.1.0.4 (39773) - SAM CLI, версия 0.30.0 - aws-cli / 1.16.272 Python / 3.6.4 Windows / 10 botocore / 1.13.8
Я не уверен, что смогу обеспечить пошаговое воспроизведение в этом случае, так как код не изменился, это что-то с моей средой, которую я не могу точно определить. Со вчерашнего дня, когда локальные вызовы работали нормально, я не возился ни с какими настройками.