Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Важно!
Содержимое этой статьи изменяется на основе выбранной модели программирования Node.js в селекторе в верхней части страницы. Модель версии 4 общедоступна и предназначена для более гибкого и интуитивно понятного интерфейса для разработчиков JavaScript и TypeScript. Дополнительные сведения о различиях между версиями 3 и 4 см. в руководстве по миграции.
В этой статье приведено руководство по устранению распространенных сценариев в приложениях-функциях Node.js.
Вкладка "Диагностика и устранение проблем" в портал Azure является полезным ресурсом для мониторинга и диагностики возможных проблем, связанных с приложением. Он также предоставляет потенциальные решения для ваших проблем на основе диагноза. Дополнительные сведения см. в диагностика приложения-функции Azure.
Другим полезным ресурсом является вкладка "Журналы" в портал Azure для экземпляра приложения Аналитика, чтобы можно было выполнять пользовательские запросы KQL. В следующем примере запроса показано, как просмотреть ошибки и предупреждения для приложения за прошлый день:
let myAppName = "<your app name>";
let startTime = ago(1d);
let endTime = now();
union traces,requests,exceptions
| where cloud_RoleName =~ myAppName
| where timestamp between (startTime .. endTime)
| where severityLevel > 2
Если эти ресурсы не решить вашу проблему, в следующих разделах приведены рекомендации по конкретным проблемам с приложениями:
Нет найденных функций
Если в журналах отображается какая-либо из следующих ошибок:
Триггеры HTTP не найдены.
Не найдены функции задания. Попробуйте сделать классы заданий и методы общедоступными. Если вы используете расширения привязки (например, служба хранилища Azure, ServiceBus, Таймеры и т. д.), убедитесь, что вы вызвали метод регистрации для расширений в коде запуска (например, построитель). AddAzure служба хранилища(), построитель. AddServiceBus(), построитель. AddTimers(), etc.).
Попробуйте выполнить следующие исправления:
- При локальном запуске убедитесь, что вы используете Функции Azure Core Tools версии 4.0.5382 или более поздней версии.
- При запуске в Azure:
Убедитесь, что вы используете среду выполнения Функции Azure версии 4.25 или более поздней.
Убедитесь, что вы используете Node.js версии 18 или более поздней версии.
Задайте для параметра
FUNCTIONS_NODE_BLOCK_ON_ENTRY_POINT_ERRORtrueприложения значение . Этот параметр рекомендуется для всех приложений модели версии 4 и гарантирует, что все ошибки точки входа отображаются в журналах Application Insights. Дополнительные сведения см. в статье Справочник по параметрам приложений для Функций Azure.Проверьте журналы приложений-функций для ошибок точки входа. В следующем примере запроса показано, как просмотреть ошибки точки входа для приложения за прошлый день:
let myAppName = "<your app name>"; let startTime = ago(1d); let endTime = now(); union traces,requests,exceptions | where cloud_RoleName =~ myAppName | where timestamp between (startTime .. endTime) | where severityLevel > 2 | where message has "entry point"
- Убедитесь, что приложение имеет необходимую структуру папок с host.json в корне и папке для каждой функции, содержащей файл function.json .
Запрос undici не является конструктором
Если в журналах приложений-функций возникает следующая ошибка:
System.Private.CoreLib: исключение при выполнении функции: Functions.httpTrigger1. System.Private.CoreLib: результат: исключение сбоя: undici_1.Request не является конструктором
Убедитесь, что вы используете Node.js версии 18.x или более поздней.
Не удалось обнаружить среду выполнения Функции Azure
Если в журналах приложений-функций возникает следующая ошибка:
ПРЕДУПРЕЖДЕНИЕ. Не удалось обнаружить среду выполнения Функции Azure. Переключение пакета "@azure/функций" в режим тестирования — не все функции поддерживаются.
package.json Проверьте файл на ссылку applicationinsights и убедитесь, что версия или ^2.7.1 более поздняя. После обновления версии запустите npm install
Получить помощь от Microsoft
Вы можете получить дополнительную помощь от Корпорации Майкрософт одним из следующих способов:
- Выполните поиск известных проблем в репозитории Функции Azure Node.js. Если проблема не отображается упоминание, создайте новую проблему и сообщите нам о том, что произошло.
- Если вы не можете диагностировать проблему с помощью этого руководства, специалисты службы поддержки Майкрософт доступны для диагностики проблем с приложением. Корпорация Майкрософт предлагает различные планы поддержки. Создайте запрос в службу поддержки и устранение неполадок на странице приложения-функции в портал Azure.