Как я могу захватить вывод консоли функции Azure, которая немедленно завершает работу? - PullRequest
0 голосов
/ 19 октября 2018

У меня есть функция Azure v2.Когда я запускаю проект в режиме отладки, открывается окно консоли, я вижу, как раскручивается логотип Azure, затем появляется красный текст, и все отключается, прежде чем я смог увидеть исключение.Есть ли способ записать то, что пишет в окно консоли?(Или есть какие-то другие предложения относительно того, как я могу перехватить исключение и выяснить, что происходит?)

У меня установлены следующие пакеты:

  • Microsoft.Azure.WebJobs.Extensions.Storage v3.0.1
  • Microsoft.NET.Sdk.Functions v1.0.23
  • NETStandardLibrary v2.0.3
  • SimpleInjector v4.3.0

Я использую эмулятор хранилища Azure и Visual Studio в режиме администратора.Для всех моих соединений я использую UseDevelopmentStorage=true.

Мой файл launchSettings.json выглядит следующим образом:

{
  "profiles": {
    "MyProject.Functions": {
      "commandName": "Project",
      "commandLineArgs": "C:\\Users\\someone\\AppData\\Roaming\\npm\\node_modules\\azure-functions-core-tools\\bin\\func.dll host start --port 7077 --pause-on-start"
    }
  }
}

Пожалуйста, дайте мне знать, если есть какая-либо другая информация, которую я должен предоставить.

Ответы [ 2 ]

0 голосов
/ 20 октября 2018

Мое предложение - удалить ваш launchSettings.json.

. По умолчанию функциональному проекту не нужен этот файл, и он автоматически загружает и работает с последними инструментами ядра функций, если у нас установлена ​​последняя версия Azure Functions and Web Jobs Tools.,Найдите его в меню VS> Инструменты> Расширения и обновления, прямо сейчас посмотрите, что его версия 15.10.2046 в VS 15.8.7.

Мы можем видеть профиль по умолчанию для проекта Function:

"<YourFunctionAppName>": {
  "commandName": "Project"
}

Если вы хотите использовать cli, установленный через npm, попробуйте следующие настройки.

"<YourProfileName>": {
  "commandName": "Executable",
  "executablePath": "%APPDATA%\\npm\\node_modules\\azure-functions-core-tools\\bin\\func.exe",
  "commandLineArgs": "host start --port 7077"
}

--port является необязательным, по умолчанию используется значение 7071. Нет аргумента с именем --pause-on-start.

0 голосов
/ 19 октября 2018

С v2 вы получите ошибку в CLI функций, если мы не обновили версию Storage Emulator.Но эта ошибка не остановит тестирование функции на локальном компьютере. Журналы обычно отправляются в TableStorage в эмуляторе.

Ошибка, подобная этой на снимке экрана.enter image description here

...