Узел Отладка без сервера в автономном режиме с использованием vscode
Я использую VS Code для разработки функций AWS Lambda,
Я начал использовать серверную среду и автономную библиотеку, но,
Я не могу использовать режим отладки VS Code для локальной отладки кода.
Я имею в виду многие сайты, ниже приводится один из них -
https://medium.com/@OneMuppet_/debugging-lambada-functions-locally-in-vscode-with-actual-break-points-deee6235f590
Моя структура проекта выглядит следующим образом -
Package.json -
launch.json -
Я получаю следующую ошибку при запуске отладки -
Может кто-нибудь, пожалуйста, руководство, с правильной конфигурацией?
3 ответа
В package.json добавьте скрипт отладки:
"scripts": {
.......
"debug": "node --inspect node_modules/serverless/bin/serverless offline -s dev",
.........
}
VS код Lunch.json
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"cwd": "${workspaceFolder}",
"name": "Serverless",
"runtimeExecutable": "npm",
"runtimeArgs": [
"run",
"debug"
],
"port": 9229
}
]
}
Затем начните отладку из кода VS
Предупреждение, которое вы видите, является предупреждением об устаревании; устаревший отладчик (--debug) устарел начиная с узла 7.7.0. Правильный способ присоединения отладчика узла к автономному серверу - использование --inspect
:
node --inspect $(npm bin)/sls offline start
Если у вас есть действительный пример события в формате JSON И вы в порядке с отладкой одной функции за раз, то вот конфигурация, которая отлично сработала для меня. Он включает точки останова и пошаговую отладку именно так, как вы ожидаете:
{
"type": "node",
"request": "launch",
"cwd": "${workspaceFolder}",
"name": "sls invoke local: myFunction",
"runtimeExecutable": "sls",
"runtimeArgs": [
"invoke",
"local",
"-f",
"loadOptions",
"-p",
"activities/myFunction/myFunction-event.json"
],
},