Usuwanie błędów w aplikacji Flow i limity użytkowania

W tym dokumencie opisano typowe błędy i limity, przyczyny ich występowania oraz sposób ich obsługi. Istnieją dwa typy błędów, które mogą wystąpić w aplikacji Flow: błędy trwałe i błędy przejściowe.

Błędy przejściowe

Błędy przejściowe to błędy tymczasowe, które pojawiają się, gdy aplikacja Flow nie jest w stanie ukończyć zadania. Błędy te są ponawiane, dopóki nie zakończą się powodzeniem lub nie osiągną limitu czasu. Na przykład, jeśli Flow nie może skontaktować się z partnerem podczas wykonywania czynności konektora, ponawia wykonanie zadania wiele razy, zanim zrezygnuje.

Ponowne próby są rozłożone w czasie, przy czym opóźnienie między każdą kolejną próbą wzrasta w stosunku do poprzedniego opóźnienia. Zazwyczaj, gdy workflow napotyka przejściowe błędy, pozostaje w stanie działania przez długi czas, ponieważ ponawia próby wykonania zadań.

Po pomyślnej ponownej próbie wykonania zadania workflow jest kontynuowany. Jeśli ponawiane zadanie napotka trwały błąd, workflow zakończy się niepowodzeniem. Każda sekcja workflow ma łączny górny limit wykonania wynoszący 36 godzin. Jeśli krok z błędami przejściowymi nie powiedzie się przed osiągnięciem limitu, workflow skończy się niepowodzeniem.

Procesy workflow z krokami oczekiwania są podzielone na sekcje, co wpływa na sposób obliczania limitów czasu w workflow. Każda sekcja to grupa zadań, które są wykonywane razem, a każde z nich ma swój własny 36-godzinny limit czasu. Na przykład, jeśli workflow ma krok oczekiwania trwający jedną godzinę, zadania przed krokiem oczekiwania zostaną wykonane razem w jednej sekcji, a zadania po kroku oczekiwania zostaną wykonane razem w innej sekcji. Jeśli workflow ma wiele kroków oczekiwania, zadania między każdym krokiem oczekiwania będą wykonywane razem w jednej sekcji. Procesy workflow bez kroku oczekiwania są traktowane jako jedna sekcja.

Sporadyczne błędy przejściowe występują często. Jeśli jednak workflow stale napotyka ten sam przejściowy błąd w wielu przebiegach, może być konieczne ponowne skonfigurowanie workflow.

Przekroczenie limit czasu kroku

Step timed out błędy zwykle pojawiają się, gdy zadanie w workflow próbuje zapytać o zbyt wiele danych w jednej sekcji. Błąd ten często występuje w procesach workflow, które wykonują iteracje po listach, zwłaszcza zagnieżdżonych, które są zbyt duże, aby można je było pobrać w odpowiednim czasie.

Gdy workflow napotka ten błąd, krok wyzwalacza lub oczekiwania jest wyświetlany jako retrying.

Aby rozwiązać ten problem, sprawdź wszelkie warunki, które mają dostęp do list i zagnieżdżonych list, aby upewnić się, że są prawidłowe. Częstym problemem jest to, że warunek sprawdza wszystkie produkty w sklepie, a nie tylko produkty w zamówieniu.

Status 5xx

Większość czynności Flow polega na wykonywaniu wywołań HTTP. Czasami problemy z siecią lub innymi serwerami mogą powodować niepowodzenie wywołań HTTP i zwracanie kodu błędu z zakresu od 500 do 599. Jednorazowe wystąpienie tego błędu nie stanowi problemu, ale powtarzające się przypadki mogą wskazywać na problem z serwerem obsługującym zadanie, a nie ze sposobem konfiguracji kroku.

Ten typ błędu jest najczęściej spotykany w czynności Wyślij zapytanie HTTP, ale może wystąpić w większości zadań.

Ograniczenie GraphQL

Całkowita ilość pracy wykonanej przez workflow jest ograniczona limitami wywołań API, które są określane częściowo przez plan. Zazwyczaj te limity nie są osiągane, chyba że workflow jest bardzo złożony lub zawiera niezamierzony błąd projektowy. Poniżej przedstawiono przykłady sytuacji, które mogą prowadzić do wystąpienia tego błędu:

  • Liquid lub warunki w pętli workflow na liście zawierającej duże ilości danych, np. sprawdzanie wartości metapól zawierających kod HTML.
  • Liquid lub warunki w pętli workflow na dużej liście, np. zapętlenie shop.orders w dużym sklepie.
  • Workflow powoduje nieskończoną pętlę, w której ciągle tworzy nowe przebiegi. Na przykład może się to zdarzyć, jeśli workflow używa wyzwalacza Dodano tagi klienta i zawiera czynność Dodaj tagi klienta.

Po osiągnięciu limitu otrzymasz błąd GraphQL throttled. Błąd ten może mieć wpływ na inne procesy workflow podczas próby uruchomienia, więc w przypadku jego wystąpienia należy go natychmiast usunąć.

Błędy trwałe

Błędy trwałe to błędy, które występują, gdy Flow nie jest w stanie ukończyć zadania i nie można ponowić próby jego wykonania. Na przykład, jeśli Flow nie jest w stanie wysłać e-maila, ponieważ adres e-mail jest nieprawidłowy, nie próbuje ponowić tego zadania. Workflow kończy się niepowodzeniem.

Flow nie ma uprawnień do Twojego konta Arkuszy Google. Podłącz ponownie swoje konto.

Konektor Arkuszy Google wymaga połączenia konta Google z aplikacją Flow w celu uzyskania uprawnień do zapisu na arkuszu. Ten błąd może wystąpić, gdy Flow nie ma uprawnień do zapisu w arkuszu, bądź dlatego, że konto zostało odłączone od Flow, lub z powodu braku dostępu tego konta do arkusza.

Aby rozwiązać ten problem, upewnij się, że konto używane dla konektora może otworzyć arkusz i ma dostęp do edycji. Jeśli nieprawidłowe konto jest powiązane, możesz je odłączyć i podłączyć nowe.

Kroki:

  1. Otwórz lub utwórz nowy workflow.
  2. Dodaj czynność.
  3. Wybierz konektor Arkusze Google.
  4. Kliknij Odłącz, a następnie Połącz.

Odebrano czynność Flow z nieprawidłowymi właściwościami. Klient nie wyraża zgody na otrzymywanie materiałów marketingowych.

Czynność Wyślij e-mail marketing nie wysyła e-maili do klientów, którzy nie zgodzili się na ich otrzymywanie, i trwale kończy się niepowodzeniem, jeśli workflow podejmie taką próbę.

Aby rozwiązać ten problem, dodaj w workflow warunek, który sprawdza status subskrypcji klientów. Możesz upewnić się, czy klienci zgodzili się na otrzymywanie e-maili marketingowych przed ich wysłaniem. Wykonaj kroki w sekcji Zarządzanie listą subskrybentów e-maili.

Brak zasobu dla [typu zasobu]

Błąd ten wskazuje, że zasób, taki jak customer lub order, został usunięty, zanim workflow mógł pobrać jego dane. Najczęściej dzieje się to po kroku oczekiwania, ale taka sytuacja może także wystąpić w wyzwalaczu, jeśli zasób zostanie usunięty bardzo szybko po wystąpieniu zdarzenia wyzwalającego.

Otrzymuj powiadomienia, gdy wystąpi błąd

Jeśli wystąpienie błędów może mieć wpływ na działanie Twojego sklepu, możesz skonfigurować powiadomienia o błędach. Powiadomienia o błędach można utworzyć tak samo, jak każdy inny workflow przy użyciu wyzwalacza Wystąpił błąd workflow. Powiadomienia o błędach mają na celu ograniczenie szumu informacyjnego, więc otrzymasz tylko jedno powiadomienie na każdą wersję workflow.

Aby rozpocząć, możesz użyć jednego z poniższych szablonów:

Ponowne uruchamianie przebiegów

W niektórych przypadkach przebieg workflow może napotkać błąd lub nie działać zgodnie z przeznaczeniem. Po rozwiązaniu problemów w powiązanym workflow wcześniejsze przebiegi można ponownie uruchomić ręcznie, aby wstecznie skorygować ich wyniki. Dowiedz się więcej o ponownym uruchamianiu przebiegów workflow.

Gotowy(-a) do rozpoczęcia sprzedaży za pomocą Shopify?

Wypróbuj za darmo