Чтобы исправить это и отладить функции Node SAM Local Lambda, мне пришлось прочитать документацию по отладке Node.js (https://code.visualstudio.com/docs/nodejs/nodejs-debugging#_supported-nodelike-runtimes).
В частности, та часть, которая решила эту проблему на моей стороне, связана с протоколами отладки «Наследие» и «Инспектор». Для Node >8.0 необходимо использовать устаревший протокол отладки.
Поскольку Lambda Runtime использует Node 6.10, с моей стороны пришлось использовать устаревший протокол.
Сначала я не думал, что это может быть проблемой, поскольку конфигурация SAM Local node VS Code на самом деле неправильно (по крайней мере, для меня) ссылается на протокол «Инспектор» в своих документах, в то время как правильно ссылается на протокол «Устаревший» в Gif (см. ниже) внутри тех же документов.
Для тех, кто хотел бы попробовать это, вот как должен выглядеть мой РАБОТАЮЩИЙ файл launch.json.
{
"version": "0.2.0",
"configurations": [
{
"name": "Attach to SAM Local",
"type": "node",
"request": "attach",
"address": "127.0.0.1",
"port": 8000,
"localRoot": "${workspaceRoot}/dist",
"remoteRoot": "/var/task",
"protocol": "legacy"
}
]
}
Самая важная часть этого: "протокол": "устаревший"
Я предполагаю, что вы можете поменять местами 127.0.0.1 обратно на localhost и перенести обратно на 5858 (а не на 8000), поскольку все это фрагменты моих разнообразных попыток найти решение, но я еще не пробовал.
Я отправлю запрос на вытягивание в AWS SAM Local README.md на github (здесь: https://github.com/awslabs/aws-sam-local#debugging-applications), как только появится минутка. Надеюсь, это поможет другим тем временем!
Сравните приведенное выше с документами, в которых на момент публикации все еще указан следующий JSON в качестве правильных настроек для файла VS Code launch.json:
НЕВЕРНЫЙ JSON, который не работает, но упоминается в документации (НЕ ИСПОЛЬЗУЙТЕ ЭТОТ):
{
"version": "0.2.0",
"configurations": [
{
"name": "Attach to SAM Local",
"type": "node",
"request": "attach",
"address": "localhost",
"port": 5858,
"localRoot": "${workspaceRoot}",
"remoteRoot": "/var/task",
"protocol": "inspector"
}
]
}
person
Necevil
schedule
12.03.2018