Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: Azure Logic Apps (Standardowa)
Aby ułatwić uruchamianie przepływów pracy aplikacji logiki w warstwie Standardowa z wysoką dostępnością i wydajnością, skonfiguruj funkcję kontroli kondycji w aplikacji logiki, aby monitorować kondycję przepływu pracy. Ta funkcja zapewnia odporność aplikacji, zapewniając następujące korzyści:
Proaktywne monitorowanie, dzięki czemu możesz znaleźć i rozwiązać problemy przed ich wpływem na klientów.
Zwiększona dostępność przez usunięcie wystąpień w złej kondycji z modułu równoważenia obciążenia na platformie Azure.
Automatyczne odzyskiwanie przez zastąpienie wystąpień w złej kondycji.
Jak działa sprawdzanie kondycji w usłudze Azure Logic Apps?
Health Check to funkcja platformy usługi aplikacja systemu Azure, która przekierowuje żądania z dala od wystąpień w złej kondycji i zastępuje te wystąpienia, jeśli pozostają w złej kondycji. W przypadku aplikacji logiki w warstwie Standardowa można określić ścieżkę do przepływu pracy "kondycji", który został utworzony w tym celu, a platforma App Service wysyła polecenie ping w regularnych odstępach czasu. Na przykład w poniższym przykładzie przedstawiono podstawowy minimalny przepływ pracy:
Po włączeniu kontroli kondycji platforma App Service wysyła polecenie ping do określonej ścieżki przepływu pracy dla wszystkich wystąpień aplikacji logiki w 1-minutowych odstępach czasu. Jeśli aplikacja logiki wymaga skalowania w poziomie, platforma Azure natychmiast tworzy nowe wystąpienie. Platforma App Service ponownie wysyła polecenie ping do ścieżki przepływu pracy, aby upewnić się, że nowe wystąpienie jest gotowe.
Jeśli przepływ pracy uruchomiony w wystąpieniu nie odpowiada na żądanie ping po 10 żądaniach, platforma usługi App Service określa, że wystąpienie jest w złej kondycji i usuwa wystąpienie tej konkretnej aplikacji logiki z modułu równoważenia obciążenia na platformie Azure. W przypadku minimum dwóch żądań można określić wymaganą liczbę żądań zakończonych niepowodzeniem, aby określić, że wystąpienie jest w złej kondycji. Aby uzyskać więcej informacji na temat zastępowania zachowania domyślnego, zobacz Configuration: Monitor App Service instances using Health Check (Konfiguracja: monitorowanie wystąpień usługi App Service przy użyciu kontroli kondycji).
Po usunięciu wystąpienia w złej kondycji funkcja nadal wysyła polecenie ping do wystąpienia. Jeśli wystąpienie odpowiada kodem stanu w dobrej kondycji, włącznie z zakresu od 200 do 299, funkcja Kontroli kondycji zwraca wystąpienie do modułu równoważenia obciążenia. Jeśli jednak wystąpienie pozostanie w złej kondycji przez jedną godzinę, funkcja Kontroli kondycji zastępuje wystąpienie nowym. Aby uzyskać więcej informacji, zobacz Co usługa App Service robi z kontrolami kondycji.
Prerequisites
Konto i subskrypcja platformy Azure. Jeśli nie masz subskrypcji, zarejestruj się w celu założenia bezpłatnego konta platformy Azure.
Zasób standardowej aplikacji logiki z następującymi atrybutami:
Plan usługi App Service skalowany do co najmniej dwóch wystąpień.
Przepływ pracy "kondycja", w szczególności uruchamiający kontrolę kondycji i następujące elementy:
Rozpoczyna się od wyzwalacza Żądania o nazwie Po odebraniu żądania HTTP.
Zawiera akcję Żądanie o nazwie Odpowiedź. Ustaw tę akcję, aby zwrócić kod stanu włącznie z zakresu od 200 do 299.
Możesz również opcjonalnie uruchomić inne kontrole przepływu pracy, aby upewnić się, że usługi zależne są dostępne i działają zgodnie z oczekiwaniami. Najlepszym rozwiązaniem jest upewnienie się, że ścieżka kontroli kondycji monitoruje krytyczne składniki w przepływie pracy. Jeśli na przykład aplikacja zależy od bazy danych i systemu obsługi komunikatów, upewnij się, że kontrola kondycji może uzyskać dostęp do tych składników.
Limitations
Określona długość ścieżki musi zawierać mniej niż 65 znaków.
Zmiany w określonej ścieżce kontroli kondycji powodują ponowne uruchomienie aplikacji logiki. Aby zmniejszyć wpływ na aplikacje produkcyjne, skonfiguruj miejsca wdrożenia i użyj ich.
Kontrola kondycji nie wykonuje przekierowań dla kodu stanu 302. Dlatego unikaj przekierowań i upewnij się, że wybrano ścieżkę, która istnieje w aplikacji.
Konfigurowanie kontroli kondycji
W witrynie Azure Portal przejdź do zasobu aplikacji logiki w warstwie Standardowa.
W menu aplikacji logiki w obszarze Monitorowanie wybierz pozycję Sprawdzanie kondycji. Na stronie Sprawdzanie kondycji na karcie Sprawdzanie kondycji wybierz pozycję Włącz.
W obszarze Ścieżka sondy kondycji wprowadźprawidłową ścieżkę adresu URL dla przepływu pracy, na przykład:
/api/<workflow-name>/triggers/<request-trigger-name>/invoke?api-version=2022-05-01Zapisz zmiany. Na pasku narzędzi wybierz pozycję Zapisz.
W zasobie aplikacji logiki zaktualizuj plik host.json , wykonując następujące kroki:
W menu aplikacji logiki w obszarze Narzędzia programistyczne wybierz pozycję Narzędzia>.
Na pasku narzędzi KuduPlus z menu Konsola debugowania wybierz pozycję CMD.
Przejdź do folderu site/wwwroot , a obok pliku host.json wybierz pozycję Edytuj.
W edytorze plików host.json dodaj właściwość Workflows.HealthCheckWorkflowName i nazwę przepływu pracy kondycji, aby włączyć uwierzytelnianie i autoryzację sprawdzania kondycji, na przykład:
"extensions": { "workflow": { "settings": { "Workflows.HealthCheckWorkflowName" : "<workflow-name>" } } }Po zakończeniu wybierz pozycję Zapisz.
Troubleshooting
Po ustawieniu ścieżki kondycji przepływ pracy kondycji nie jest wyzwalany.
W menu aplikacji logiki wybierz pozycję Diagnozuj i rozwiąż problemy.
W obszarze Kategorie rozwiązywania problemów wybierz pozycję Dostępność i wydajność.
Znajdź i przejrzyj sekcję kodów stanu.
Jeśli kod stanu to 401, sprawdź następujące elementy:
Upewnij się, że właściwość Workflows.HealthCheckWorkflowName i nazwa przepływu pracy kondycji są wyświetlane poprawnie.
Upewnij się, że określona ścieżka jest zgodna z przepływem pracy i nazwą wyzwalacza żądania .
Typowe problemy z kondycją
Mój zasób aplikacji logiki nie ma żadnych przepływów pracy, ale zasób nadal jest skalowany w poziomie do wielu wystąpień, co wiąże się z kosztami.
Takie zachowanie może wystąpić, jeśli zasób aplikacji logiki nie jest w dobrej kondycji lub zazwyczaj nie może uzyskać dostępu do skojarzonego konta magazynu. Spróbuj sprawdzić, czy konto magazynu ma ustawienie sieciowe blokujące dostęp, czy też masz zasady zapory sieciowej, które blokują dostęp.
Mój zasób aplikacji logiki zawiera przepływy pracy, ale nie działa zbyt wiele. Jednak zasób nadal jest skalowany w poziomie do wielu wystąpień, co wiąże się z kosztami.
Sprawdź, czy zasób może uzyskać dostęp do skojarzonego konta magazynu.
Czy na przykład konto magazynu ma ustawienie sieciowe, które blokuje dostęp? Czy masz zasady zapory sieciowej, które blokują dostęp?
Jeśli przepływ pracy rozpoczyna się od wyzwalacza opartego na dostawcy usług, upewnij się, że wyzwalacz działa prawidłowo zgodnie z oczekiwaniami.
Wyzwalacz oparty na dostawcy usług, który uległ awarii, może spowodować niepotrzebne skalowanie, co może znacznie zwiększyć koszty.
Na przykład typowy nadzór ustawia wyzwalacz bez udzielania aplikacji logiki uprawnień lub dostępu do miejsca docelowego, takiego jak kolejka usługi Service Bus, kontener obiektów blob usługi Storage itd.
Upewnij się, że takie wyzwalacze są monitorowane przez cały czas, dzięki czemu można szybko wykrywać i rozwiązywać wszelkie problemy.
Mój przepływ pracy sporadycznie zatrzymuje przetwarzanie komunikatów przez wiele godzin, ale działa najlepiej w większości przypadków.
Jeśli aplikacja logiki w warstwie Standardowa używa opcji hostingu o nazwie Plan usługi przepływu pracy i nie jest hostowana w środowisku App Service Environment, upewnij się, że jest włączone monitorowanie skalowania w czasie wykonywania i że zawsze gotowe wystąpienia są ustawione na co najmniej 1.
W witrynie Azure Portal znajdź i otwórz aplikację logiki, jeśli nie jest jeszcze otwarta.
W menu aplikacji logiki w obszarze Ustawienia wybierz pozycję Konfiguracja.
Na karcie Ustawienia środowiska uruchomieniowego przepływu pracy obok pozycji Monitorowanie skalowania środowiska uruchomieniowego wybierz pozycję Włączone.
Na pasku narzędzi strony Konfiguracja wybierz pozycję Zapisz.
W menu aplikacji logiki w obszarze Ustawienia wybierz pozycję Skaluj w poziomie (plan usługi App Service).
W obszarze Skalowanie aplikacji w poziomie upewnij się, że wartość Zawsze gotowe wystąpienia nie jest ustawiona na 0.