Rozwiązywanie typowych problemów podczas uaktualniania środowiska Azure Runtime
W tym artykule opisano sposób rozwiązywania niektórych typowych problemów, które mogą wystąpić podczas aktualizacji języka aplikacji funkcji lub wersji środowiska uruchomieniowego, takich jak nieosiągalne środowisko uruchomieniowe i nie można odnaleźć modułów.
Akcje do wykonania, jeśli otrzymasz wiadomość e-mail "Zalecane działanie: zaktualizuj aplikacje Azure Functions, aby korzystały z platformy .NET 6".
Rozszerzona obsługa platformy Microsoft .NET Core 3.1 zakończyła się 3 grudnia 2022 r. Azure Functions środowisko uruchomieniowe w wersji 3 jest oparte na platformie .NET Core 3.1. Zalecamy zaktualizowanie aplikacji funkcji do środowiska uruchomieniowego w wersji 4.x, która korzysta z platformy .NET 6 i ma długoterminową obsługę. Po 3 grudnia 2022 r. aplikacje nie kwalifikują się do nowych funkcji, poprawek zabezpieczeń, optymalizacji wydajności ani pomocy technicznej, dopóki nie uaktualnisz ich do środowiska uruchomieniowego usługi Functions w wersji 4.x.
Aplikacje usługi Functions w środowisku uruchomieniowymi w wersji 3 będą nadal działać i nie będą miały to wpływu na aplikacje. Kod można wdrożyć w tych aplikacjach usługi Functions po tej dacie. Możemy jednak usunąć możliwość tworzenia aplikacji przeznaczonych dla środowiska uruchomieniowego usługi Functions w wersji 3 przy użyciu typowych ścieżek.
Aby uzyskać więcej informacji i wskazówki dotyczące migracji, zobacz:
Sprawdzanie zgodności aplikacji funkcji dla środowiska uruchomieniowego w wersji 4
- Przejdź do aplikacji funkcji w Azure Portal. Wybierz pozycję Diagnozuj i rozwiąż problemy, aby otworzyć Azure Functions diagnostykę. Na pasku wyszukiwania wpisz Aktualizowanie języka aplikacji funkcji lub wersji środowiska uruchomieniowego , aby uruchomić go bezpośrednio. Raport diagnostyczny zawiera wskazówki dotyczące aktualizacji. Po zakończeniu walidacji postępuj zgodnie z zaleceniami i rozwiązuj wszelkie problemy w aplikacji.
- Udostępniamy również moduł sprawdzania poprawności przed uaktualnieniem , który ułatwia identyfikowanie potencjalnych problemów podczas migracji aplikacji funkcji do wersji 4.x. Na tym samym pasku wyszukiwania diagnostyki wpisz Functions 4.x Pre-Upgrade Validator , aby uruchomić go bezpośrednio. Po zakończeniu walidacji postępuj zgodnie z zaleceniami i rozwiązuj wszelkie problemy w aplikacji.
- Zdecydowanie zalecamy uaktualnienie lokalnego środowiska projektu do wersji 4.x. W pełni przetestuj aplikację lokalnie przy użyciu wersji 4.x podstawowych narzędzi Azure Functions.
- Rozważ użycie miejsca przejściowego do przetestowania i zweryfikowania aplikacji na platformie Azure w nowej wersji środowiska uruchomieniowego przed wdrożeniem w miejscu produkcyjnym. Pamiętaj, aby ustawić
WEBSITE_OVERRIDE_STICKY_EXTENSION_VERSIONS=0
opcję migracji z miejscami.
Zmienianie wersji środowiska uruchomieniowego usługi Functions dla systemu Windows
- Ustaw FUNCTIONS_EXTENSION_VERSION, czyli ustawienie aplikacji w okienku konfiguracji Azure Portal, na wartość
~4
. Aby uzyskać więcej informacji, zobacz Zmienianie wersji środowiska uruchomieniowego. - Ustaw ustawienie lokacji na docelową
netFrameworkVersion
platformę .NET 6.netFrameworkVersion
to ustawienie SiteConfig, a nie ustawienie aplikacji. I nie jest bezpośrednio dostępny w Azure Portal. Można go jednak ustawić przy użyciu Eksploratora zasobów platformy Azure lub interfejsu wiersza polecenia platformy Azure/programu PowerShell.
Aby uzyskać więcej informacji, zobacz wersje środowiska uruchomieniowego usługi Functions.
Zmienianie wersji środowiska uruchomieniowego usługi Functions dla systemu Linux
- Ustaw FUNCTIONS_EXTENSION_VERSION, czyli ustawienie aplikacji w okienku konfiguracji Azure Portal, na wartość
~4
. Aby uzyskać więcej informacji, zobacz Zmienianie wersji środowiska uruchomieniowego. - Ustaw
LinuxFxVersion
wartość , przy użyciu interfejsu wiersza polecenia (CLI) na<Language>|<LanguageVersion>
wartość , na podstawie używanego języka. Aby uzyskać więcej informacji, zobacz Using LinuxFxVersion for Linux Function Apps (Używanie narzędzia LinuxFxVersion dla aplikacji funkcji systemu Linux). Aby na przykład zaktualizować program do platformy .NET 6, można ustawić wartośćLinuxFxVersion
idotnet|6.0
FUNCTIONS_EXTENSION_VERSION
na wartość~4
.
Aby uzyskać więcej informacji, zobacz wersje środowiska uruchomieniowego usługi Functions.
Pobieranie listy obsługiwanych języków według wersji środowiska uruchomieniowego
Zobacz listę obsługiwanych języków według wersji środowiska uruchomieniowego.
Aktualizowanie ustawienia wersji językowej aplikacji funkcji po zaktualizowaniu kodu
- PowerShell: w Azure Portal ustaw wartość
PowerShell Core version
. Aby uzyskać więcej informacji, zobacz Zmienianie wersji programu PowerShell. - Python: ustaw
linuxFxVersion
wartość napython|3.x
. Aby uzyskać więcej informacji, zobacz Zmienianie wersji języka Python. - Java: określ wersję językową przy użyciu wartości
-DjavaVersion
11 lub 17. Aby uzyskać więcej informacji, zobacz Określanie wersji wdrożenia. - Węzeł, JavaScript: dla systemu Windows ustaw
WEBSITE_NODE_DEFAULT_VERSION
ustawienie aplikacji na~16
. W przypadku systemu Linux ustawlinuxFxVersion
wartość , przy użyciu interfejsu wiersza polecenia, na wartośćnode|16
. Aby uzyskać więcej informacji, zobacz Ustawianie wersji węzła.
użycie serwerów proxy Azure Functions
Obsługa serwerów proxy jest ponownie dostępna w wersji 4.x, dzięki czemu można pomyślnie uaktualnić aplikacje funkcji do najnowszej wersji środowiska uruchomieniowego. Zalecamy jednak jak najszybsze przejście na integrację aplikacji funkcji z usługą Azure API Management. API Management umożliwia korzystanie z bardziej kompletnego zestawu funkcji do definiowania, zabezpieczania i zarabiania na interfejsach API opartych na usłudze Functions oraz zarządzania nimi. Aby uzyskać więcej informacji, zobacz Jak przeprowadzić migrację do usługi APIM i zintegrować funkcje z usługą APIM przy użyciu programu Visual Studio.
Pobierz listę wszystkich aplikacji Azure Functions, które używają środowiska uruchomieniowego w wersji 1.x, 2.x lub 3.x
- Przejdź do aplikacji funkcji w Azure Portal.
- Wybierz pozycję Diagnozuj i rozwiąż problemy, aby otworzyć Azure Functions diagnostykę.
- Na pasku wyszukiwania wpisz Aktualizowanie języka aplikacji funkcji lub wersji środowiska uruchomieniowego , aby uruchomić go bezpośrednio.
- W raporcie diagnostycznym przewiń w dół i wybierz pozycję Wyświetl wszystkieszczegóły widoku aplikacji > funkcji.
- Ustaw filtry wyszukiwania i wybierz pozycję Pokaż , aby uzyskać listę aplikacji funkcji w bieżącej subskrypcji.
Alternatywnie można użyć App Service wywołań interfejsu API REST (GetConfiguration), aby to ustalić.
LinuxFxVersion
i WindowsFxVersion
podaj informacje o wersji.
Przenoszenie aplikacji .NET Framework 4.6.1 ze środowiska uruchomieniowego usługi Functions w wersji 1 do wersji 4
.NET Framework wersja 4.6.1 została zakończona, dlatego aplikacje powinny zostać uaktualnione do wersji .NET Framework 4.8. W usłudze Functions w wersji 4 możesz uruchomić aplikację platformy .NET Framework 4.8 w trybie pozaprocesowym. Aby uzyskać więcej informacji, zobacz przewodnik po izolowanym procesie.
Zmigrowana aplikacja funkcji nie uruchamia się lub ma problemy ze środowiskiem uruchomieniowym
- W przypadku aplikacji platformy .NET pamiętaj, aby zaktualizować kod do platformy .NET 6 przed utworzeniem i wdrożeniem.
- Sprawdź dokładnie wersję środowiska uruchomieniowego aplikacji w Azure Portal.
- W przypadku aplikacji systemu Windows należy również ustawić
netFrameworkVersion
przy użyciu interfejsu wiersza polecenia lub programu PowerShell. - Upewnij się, że używasz pakietów rozszerzeń 2.x lub nowszych zgodnie z zaleceniami. Wersja 4.x środowiska uruchomieniowego usługi Functions wymaga wersji 2.x lub 3.0.0.
- Logowanie do usługi Azure Storage przy użyciu elementu AzureWebJobsDashboard nie jest już obsługiwane w wersji 4.x. Zamiast tego użyj usługi Application Insights do monitorowania.
- Jeśli zostanie wyświetlony komunikat, że Azure Functions środowisko uruchomieniowe jest nieosiągalne i udostępniasz konta magazynu, zobacz Zagadnienia dotyczące identyfikatora hosta.
- Azure Functions 4.x nie obsługuje Node.js 10 i 12, Python 3.6 i PowerShell 6. Aby uzyskać więcej informacji, zobacz Wersje językowe obsługiwane dla środowiska uruchomieniowego w wersji 4.
- Jeśli w przypadku funkcji języka Python występują błędy związane z kolizją modułu i nie można odnaleźć modułu, spróbuj ustawić wartość
PYTHON_ISOLATE_WORKER_DEPENDENCIES
1 w ustawieniach aplikacji. - Zapoznaj się z tematem Migrowanie istniejących aplikacji funkcji.
- W przypadku problemów ze środowiskiem uruchomieniowym z opcji Diagnozowanie i rozwiązywanie problemów w Azure Portal wyszukaj pozycję Aplikacja funkcji w dół lub raportowanie błędów i przejrzyj raport diagnostyczny pod kątem komunikatów o błędach i rozwiązań. Przejrzyj również narzędzie do sprawdzania konfiguracji funkcji , aby upewnić się, że konfiguracja jest poprawna.
- Zapoznaj się z blogiem Problemy podczas uaktualniania aplikacji funkcji platformy Azure do wersji 4, aby uzyskać dodatkowe wskazówki dotyczące rozwiązywania problemów.
Skontaktuj się z nami, aby uzyskać pomoc
Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pytanie w społeczności wsparcia dla platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii platformy Azure.