Невозможно отладить основные инструменты функций Azure в VSCode - PullRequest
0 голосов
/ 30 апреля 2019

В настоящее время у меня возникают проблемы с отладкой базовых инструментов функций Azure в VS Code.Я использую пакет npm azure-functions-core-tools@2.Как я читал на многих ресурсах, func host start / func start всегда должен запускать процесс узла с --inspect=9229.Как вы можете видеть, это не относится к моей настройке:

[4/30/19 4:51:25 AM] Starting language worker process:node  "/usr/lib/node_modules/azure-functions-core-tools/bin/workers/node/dist/src/nodejsWorker.js" --host 127.0.0.1 --port 50426 --workerId 3e909143-72a3-4779-99c7-376ab3aba92b --requestId 656a9413-e705-4db8-b09f-da44fb1f991d --grpcMaxMessageLength 134217728
[4/30/19 4:51:25 AM] node process with Id=92 started
[4/30/19 4:51:25 AM] Generating 1 job function(s)
[...]
[4/30/19 4:51:25 AM] Job host started
Hosting environment: Production

Также все попытки изменить среду хостинга не увенчались успехом.Я попытался добавить FUNCTIONS_CORETOOLS_ENVIRONMENT в свою локальную конфигурацию, что привело к ошибке:

An item with the same key has already been added. Key: FUNCTIONS_CORETOOLS_ENVIRONMENT

Я попытался добавить несколько переменных среды в параметры запуска и задачи, используя --debug, изменив параметры проекта.Ничего не работает.

В настоящее время я выполняю это в подсистеме Windows для Linux (WSL), и, кроме того, это работает очень хорошо.

Кто-нибудь знает, что я делаю здесь неправильно?

1 Ответ

1 голос
/ 01 мая 2019

Я не думаю, что отладка включена по умолчанию. Вы должны будете установить аргументы языкового работника, чтобы он работал как документированный .

  1. В local.settings.json

    Для локальной отладки добавьте "languageWorkers:node:arguments": "--inspect=5858" в Values в файле local.settings.json и присоедините отладчик к порту 5858.

  2. С func CLI
    Вы можете установить это, используя --language-worker аргумент

func host start --language-worker -- --inspect=5858
  1. In VS Code
    Если вы разрабатываете с использованием кода VS и расширения функций Azure, --inspect добавляется автоматически, поскольку соответствующая переменная среды установлена ​​в .vscode/tasks.json
{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "runFunctionsHost",
      "type": "shell",
      "command": "func host start",
      "isBackground": true,
      "presentation": {
        "reveal": "always"
      },
      "problemMatcher": "$func-watch",
      "options": {
        "env": {
          "languageWorkers__node__arguments": "--inspect=5858"
        }
      },
      "dependsOn": "installExtensions"
    },
    {
      "label": "installExtensions",
      "command": "func extensions install",
      "type": "shell",
      "presentation": {
        "reveal": "always"
      }
    }
  ]
}

Вы также можете установить эту переменную среды напрямую, если хотите, вместо того, чтобы добавлять ее в local.settings.json.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...