Freigeben über


Behandeln von häufigen Problemen beim Upgrade der Azure-Runtime

In diesem Artikel wird beschrieben, wie Sie einige der häufigen Probleme beheben, die während des Updates der Funktions-App-Sprache oder Laufzeitversion auftreten können, z. B. dass die Runtime nicht erreichbar ist und Module nicht gefunden werden.

  • Der erweiterte Support für Microsoft .NET Core 3.1 endete am 3. Dezember 2022. Azure Functions Runtime v3 basiert auf .NET Core 3.1. Es wird empfohlen, dass Sie Ihre Funktions-App auf die Laufzeitversion 4.x aktualisieren, die .NET 6 verwendet und langfristig unterstützt wird. Nach dem 3. Dezember 2022 sind Ihre Apps erst dann für neue Features, Sicherheitspatches, Leistungsoptimierungen oder Support berechtigt, wenn Sie sie auf Version 4.x der Functions-Runtime aktualisieren.

  • Ihre Functions-Apps unter Runtime v3 werden weiterhin ausgeführt, und Ihre Anwendungen sind nicht betroffen. Sie können Code nach diesem Datum für diese Functions-Anwendungen bereitstellen. Wir können ihnen jedoch die Möglichkeit zum Erstellen von Anwendungen für die Functions-Runtime v3 mithilfe gängiger Pfade entfernen.

  • Weitere Informationen und Migrationsanleitungen finden Sie unter:

Überprüfen der Kompatibilität der Funktions-App für Runtime v4

  • Navigieren Sie im Azure-Portal zu Ihrer Funktions-App. Wählen Sie Diagnose und Problembehandlung aus, um Azure Functions Diagnose zu öffnen. Geben Sie in der SuchleisteUpdate der Funktions-App-Sprache oder Laufzeitversion ein, um sie direkt auszuführen. Der Diagnosebericht enthält Anleitungen zum Update. Befolgen Sie nach Abschluss der Überprüfung die Empfehlungen, und beheben Sie alle Probleme in Ihrer App.
  • Wir stellen auch ein Validierungssteuerelement vor dem Upgrade bereit, mit dem Sie potenzielle Probleme bei der Migration Ihrer Funktions-App zu 4.x identifizieren können. Geben Sie in derselben Diagnose Suchleiste Functions 4.x Pre-Upgrade Validator ein, um es direkt auszuführen. Befolgen Sie nach Abschluss der Überprüfung die Empfehlungen, und beheben Sie alle Probleme in Ihrer App.
  • Es wird dringend empfohlen, ein Upgrade Ihrer lokalen Projektumgebung auf Version 4.x durchzuführen. Testen Sie Ihre App vollständig lokal mit Version 4.x der Azure Functions Kerntools.
  • Erwägen Sie die Verwendung eines Stagingslots , um Ihre App in Azure auf der neuen Laufzeitversion zu testen und zu überprüfen, bevor Sie die Bereitstellung in einem Produktionsslot durchführen. Denken Sie daran, für die Migration mit Slots festzulegen WEBSITE_OVERRIDE_STICKY_EXTENSION_VERSIONS=0 .

Ändern der Functions-Runtimeversion für Windows

  1. Legen Sie FUNCTIONS_EXTENSION_VERSION, bei der es sich um eine App-Einstellung im Bereich Azure-Portal Konfiguration handelt, auf fest~4. Weitere Informationen finden Sie unter Ändern der Laufzeitversion.
  2. Legen Sie die netFrameworkVersion Websiteeinstellung auf .NET 6 als Ziel fest. netFrameworkVersion ist eine SiteConfig-Einstellung, keine App-Einstellung. Und es ist nicht direkt im Azure-Portal verfügbar. Sie können sie jedoch mithilfe von Azure Resource Explorer oder azure CLI/PowerShell festlegen.

Weitere Informationen finden Sie unter Functions-Laufzeitversionen.

Ändern der Functions-Runtimeversion für Linux

  1. Legen Sie FUNCTIONS_EXTENSION_VERSION, bei der es sich um eine App-Einstellung im Bereich Azure-Portal Konfiguration handelt, auf fest~4. Weitere Informationen finden Sie unter Ändern der Laufzeitversion.
  2. Legen Sie LinuxFxVersionmithilfe der Befehlszeilenschnittstelle (CLI) <Language>|<LanguageVersion>basierend auf der verwendeten Sprache fest. Weitere Informationen finden Sie unter Verwenden von LinuxFxVersion für Linux-Funktions-Apps. Um beispielsweise auf .NET 6 zu aktualisieren, können Sie auf dotnet|6.0 und FUNCTIONS_EXTENSION_VERSION auf ~4festlegenLinuxFxVersion.

Weitere Informationen finden Sie unter Functions-Laufzeitversionen.

Abrufen einer Liste der unterstützten Sprachen nach Laufzeitversion

Sehen Sie sich die Liste der unterstützten Sprachen nach Laufzeitversion an.

Aktualisieren der Sprachversionseinstellung für die Funktions-App nach dem Aktualisieren des Codes

verwendung von Azure Functions Proxys

Die Unterstützung für Proxys ist in Version 4.x wieder verfügbar, sodass Sie Ihre Funktions-Apps erfolgreich auf die neueste Laufzeitversion aktualisieren können. Es wird jedoch empfohlen, ihre Funktions-Apps so bald wie möglich in Azure API Management zu integrieren. API Management können Sie einen umfassenderen Satz von Features nutzen, um Ihre funktionenbasierten APIs zu definieren, zu schützen, zu verwalten und zu monetarisieren. Weitere Informationen finden Sie unter Migrieren zu APIM und Integrieren von Funktionen in APIM mithilfe von Visual Studio.

Abrufen einer Liste aller Azure Functions Apps, die Runtimeversion 1.x, 2.x oder 3.x verwenden

  1. Navigieren Sie im Azure-Portal zu Ihrer Funktions-App.
  2. Wählen Sie Diagnose und Problembehandlung aus, um Azure Functions Diagnose zu öffnen.
  3. Geben Sie in der SuchleisteUpdate der Funktions-App-Sprache oder Laufzeitversion ein, um sie direkt auszuführen.
  4. Scrollen Sie im Diagnosebericht nach unten, und wählen Sie Alle Funktions-App-Ansichtsdetails>auflisten aus.
  5. Legen Sie die Suchfilter fest, und wählen Sie Anzeigen aus, um die Liste der Funktions-Apps im aktuellen Abonnement abzurufen.

Alternativ können Sie App Service REST-API-Aufrufe (GetConfiguration) verwenden, um dies zu bestimmen. LinuxFxVersion und WindowsFxVersion geben die Versionsinformationen an.

Verschieben einer .NET Framework 4.6.1-App von Functions Runtime v1 zu v4

.NET Framework Version 4.6.1 hat das Ende der Lebensdauer erreicht, sodass Apps auf .NET Framework 4.8 aktualisiert werden sollten. In Functions v4 können Sie eine .NET Framework 4.8-App im Out-of-Process-Modus ausführen. Weitere Informationen finden Sie im Leitfaden für isolierte Prozesse.

Eine migrierte Funktions-App wird nicht gestartet oder weist einige Laufzeitprobleme auf.

  • Denken Sie bei .NET-Apps daran, den Code vor dem Erstellen und Bereitstellen auf .NET 6 zu aktualisieren.
  • Überprüfen Sie die Laufzeitversion der App im Azure-Portal.
  • Für Windows-Apps müssen Sie auch mithilfe der CLI oder PowerShell festlegen netFrameworkVersion .
  • Stellen Sie sicher, dass Sie die 2.x- oder höher-Erweiterungspakete wie empfohlen verwenden. Version 4.x der Functions-Runtime erfordert Die Versionen 2.x oder 3.0.0.
  • Die Anmeldung bei Azure Storage mit AzureWebJobsDashboard wird in Version 4.x nicht mehr unterstützt. Verwenden Sie stattdessen Application Insights für die Überwachung.
  • Wenn Sie eine Meldung erhalten, dass Azure Functions Runtime nicht erreichbar ist und Sie Speicherkonten freigeben, lesen Sie Überlegungen zur Host-ID.
  • Azure Functions 4.x unterstützt Node.js 10 und 12, Python 3.6 und PowerShell 6 nicht. Weitere Informationen finden Sie unter Unterstützte Sprachversionen für die v4-Runtime.
  • Wenn bei Python-Funktionen Fehler im Zusammenhang mit Modulkonflikten und nicht gefundenem Modul auftreten, versuchen Sie, in den App-Einstellungen auf 1 festzulegenPYTHON_ISOLATE_WORKER_DEPENDENCIES.
  • Lesen Sie Migrieren vorhandener Funktions-Apps.
  • Suchen Sie bei Laufzeitproblemen über die Option Diagnose und Problembehandlung im Azure-Portal nach Funktions-App ausgefallen oder meldet Fehler, und überprüfen Sie den Diagnosebericht auf Fehlermeldungen und Lösungen. Überprüfen Sie auch die Überprüfungserkennung der Funktionskonfiguration , um sicherzustellen, dass die Konfiguration korrekt ist.
  • Weitere Tipps zur Problembehandlung finden Sie im Blog Probleme beim Upgrade von Azure-Funktions-Apps auf V4 .

Kontaktieren Sie uns für Hilfe

Wenn Sie Fragen haben oder Hilfe mit Ihren Azure-Gutschriften benötigen, dann erstellen Sie beim Azure-Support eine Support-Anforderung oder fragen Sie den Azure Community-Support. Sie können auch Produktfeedback an die Azure Feedback Community senden.