Zarządzanie historią uruchamiania przepływu w chmurze w usłudze Dataverse

Dzięki historii uruchamiania przepływów w chmurze w usłudze Dataverse możesz wykorzystać rozszerzalność usługi Dataverse do śledzenia wyników wykonywania przepływów w chmurze na dużą skalę. Dzięki tej funkcji można korzystać z potęgi wspólnej architektury danych Dataverse, w tym kontroli dostępu na podstawie ról (RBAC) do zarządzania danymi FlowRun. Tylko przepływy w chmurze rozwiązania z definicjami w środowisku Dataverse mają widoczną historię uruchamiania w środowisku Dataverse.

W ramach tej funkcji każde wykonanie przepływu w chmurze ma wpis w tabeli FlowRun. Ta funkcja używa nierelacyjnej bazy danych Dataverse, tabel elastycznych, do przechowywania historii uruchamiania przepływu w chmurze.

Historia uruchamiania przepływu w chmurze w Dataverse jest używana przez centrum automatyzacji do zapewniania kompleksowego monitorowania i rozwiązywania problemów związanych z procesami automatyzacji w usłudze Power Automate.

Elementy przebiegu przepływu w chmurze

Tabela FlowRun zawiera kluczowe elementy uruchamiania przepływu w chmurze, w tym następujące:

Element Opis
Nazwa/nazwisko Klucz podstawowy i identyfikator aplikacji logiki przebiegu przepływu.
Czas rozpoczęcia Kiedy uruchomiono wykonanie przepływu w chmurze.
Godzina zakończenia Kiedy zakończono wykonanie przepływu.
Czas trwania Czas w sekundach, po jakim przepływ w chmurze zakończy przebieg.
Status Wynik końcowy wykonania przepływu (Powodzenie, Niepowodzenie lub Anulowano).
Typ wyzwalacza Typ wyzwalacza tego przebiegu przepływu (Zautomatyzowany, Zaplanowany lub Ręczny).
Kod błędu Kod błędu zwrócony z wykonania przepływu.
Wiadomość z błędem Szczegółowy komunikat o błędzie, w stosownych przypadkach, zwrócony w wyniku wykonania przepływu.
Właściciel Właściciel przepływu.
Nazwa przepływu pracy Nazwa wyświetlana przepływu w chmurze.
Identyfikator przepływu pracy Identyfikator WorkflowID konkretnego przepływu w chmurze,
IsPrimary Wartość binarna wskazująca, czy ten przebieg przepływu jest wyzwalany przez jakikolwiek nadrzędny przepływ w chmurze.
Identyfikator przebiegu nadrzędnego Nazwa nadrzędnego wystąpienia przepływu w chmurze, jeśli ten rekord dotyczy przepływu podrzędnego.
Identyfikator partycji Identyfikator partycji tego użytkownika w instancji tabeli elastycznej.
Czas życia Czas w sekundach, po którym ten rekord uruchomienia zostanie automatycznie usunięty.

Szczegóły można wyświetlać i aktualizować za pomocą standardowych interfejsów API Dataverse, łącznika Dataverse lub bezpośrednio w widoku Tabele w portalu Maker Portal.

Ponieważ ta funkcja opiera się na tabelach elastycznych, przechowujemy dane historii uruchomień w chmurze w określonych partycjach logicznych w celu optymalizacji wydajności. Dane historii uruchamiania są partycjone na podstawie użytkowników, więc każdy użytkownik w organizacji ma dedykowaną partycję.

Dane FlowRun używają pojemności magazynu bazy danych Dataverse. Wykorzystanie magazynu w różnych środowiskach można monitorować w centrum administracyjnym platformy Power Platform.

Wykorzystanie pamięci masowej dla rekordów FlowRun

Domyślnie dane przepływu są przechowywane przez 28 dni (2 419 200 sekund). Aby zmodyfikować okres przechowywania wykonań, można zaktualizować wartość Czas życia (w sekundach) dla przebiegu przepływu w tabeli Organizacja w środowisku opartym na usłudze Dataverse. W zależności od pojemności pamięci masowej środowiska można dostosować okres przechowywania tych rekordów uruchomień.

Wartość FlowRunTimeToLiveInSeconds w tabeli Organizacja można zmienić w przeglądarce tabel PowerApps lub przy użyciu internetowego interfejsu API Dataverse.

Włączanie lub zmniejszenie magazynu historii uruchamiania przepływu w chmurze

Jeśli wartość FlowRunTimeToLiveInSeconds w tabeli Organization zostanie zmieniona, nowe rekordy FlowRun będą przechowywane przez taki okres. Obniżania wartości można użyć do zmniejszenia liczby rekordów FlowRun i ilości wykorzystanego miejsca w czasie.

Ustaw czas życia FlowRun w Dataverse

Ustawienie wartości FlowRunTimeToLiveInSeconds w tabeli Organizacja na zero zatrzymuje wszystkie operacje pozyskiwania nowych rekordów FlowRun.

Ustaw czas życia FlowRun w centrum administracyjnym Power Platform

Wartość FlowRunTimeToLiveInSeconds w tabeli Organizacja można ustawić w obszarze środowisk w centrum administracyjnym platformy Power Platform. Aby wybrać okres ważności encji FlowRun używany w środowisku:

  1. Zaloguj się w Centrum administracyjnym Power Platform.
  2. Przejdź do Środowiska.
  3. W żądanym środowisku otwórz stronę Ustawienia.
  4. Wybierz Produkt>Funkcje.
  5. W sekcji Historia uruchamiania przepływów w chmurze w Dataverse ustaw wartość okresu przechowywania Czas życia encji FlowRun na 28 dni (domyślnie), 14 dni, 7 dni lub Wyłączona.

Ustawianie niestandardowych wartości TTL w celu przechowywania dłuższej lub bardziej szczegółowej historii uruchamiania przepływu w chmurze

Jeśli chcesz ustawić określoną wartość TTL (Time To Live), która nie jest dostępna w centrum administracyjnym Power Platform, możesz ustawić tę wartość bezpośrednio jako wartość FlowRunTimeToLiveInSeconds w tabeli Organization.

Natychmiast zmniejsz liczbę rekordów FlowRun

Jeśli w środowisku zaczyna brakować miejsca w magazynie, klienci mogą wyczyścić miejsce w bazie danych, ustawiając wartość TTLInSeconds dla zestawu rekordów FlowRun. Rekordy zostaną automatycznie wyczyszczone i usunięte na stałe w ciągu minuty lub dwóch. Upewnij się, że rekordy nie są już potrzebne, ponieważ nie można ich odzyskać po usunięciu.

Obliczenia wartości czasu życia (TTL)

Wartości czasu wygaśnięcia (TTL) dla pól Organization.FlowRunTimeToLiveInSeconds i FlowRun.TTLInSeconds są określone w sekundach. Poniższa tabela zawiera typowe wartości, które mogą być używane w tabelach Organization i FlowRun.

dni Sekundy
1 dzień 86,400 s
3 dni 259,200 sekund
7 dzień 604,800 sekund
14 dni 1,209,600 s
28 dni 2,419,200 s
60 dni 5,184,000 sekund

Użyj danych FlowEvent, aby uzyskać wgląd w kompletność danych FlowRun

Rekordy FlowRun mogą być niekompletne z wielu powodów. Tabela FlowEvent służy do podania sygnałów, że przebiegi zostały pominięte, a zestaw danych jest niekompletny. Brak sygnałów nie oznacza, że zestaw danych jest kompletny.

Rekordy FlowEvent można wyświetlić w przeglądarce tabel PowerApps lub za pomocą internetowego interfejsu API Dataverse. Wszystkie odpowiednie rekordy mają wartość FlowEvent.EventType ustawioną na „FlowRunIngestion”, a następnie wartość FlowEvent.EventCode objaśnia zdarzenie.

Po usunięciu przepływu w chmurze dane FlowEvent nie są już emitowane dla tego przepływu. Jeśli później przywrócisz przepływ, dane FlowEvent mogą pojawić się ponownie dopiero po upływie 24 godzin od przywrócenia. Nie wpływa to na wykonanie uruchomienia ani historię uruchamiania.

W tabeli znajduje się lista wartości FlowEvent.EventCode, które mogą zostać użyte do sygnalizowania, że dane FlowRun są niekompletne:

EventCode Przyczyna
isFlowRunIngestionECSDisabled Historia uruchamiania przepływu w chmurze nie jest zapisywana w usłudze Dataverse ze względu na konfigurację usługi, dlatego nie można wyświetlić żadnych danych przepływu w chmurze. Konfiguracja usługi ECS jest konfigurowana automatycznie i żaden administrator nie ma możliwości zmiany sposobu importowania danych w tym stanie.
TtlSettingEqual0 Konfiguracja wartości TTL (czas wygaśnięcia) bieżącego środowiska dla przebiegów przepływu w chmurze nie zachowuje danych. W związku z tym może brakować historii uruchamiania przepływu w chmurze. Ten stan ma miejsce, gdy wartość Organization.FlowRunTimeToLiveInSeconds jest aktualnie ustawiona na zero.
Pozyskiwanie danych jest wyłączone przez ustawienia organizacji Historia uruchomień przepływów w chmurze nie jest zapisywana w usłudze Dataverse z powodu ustawień środowiska, dlatego może brakować części historii uruchomień przepływów w chmurze. Taka sytuacja ma miejsce, gdy wartość Organization.FlowRunTimeToLiveInSeconds była ustawiona na zero w przeszłości.
ElasticTableStorageCapacityReached Osiągnięto limit pojemności magazynu Dataverse, co powoduje wstrzymanie synchronizacji danych przebiegu przepływu w chmurze.
ElasticTablePartitionLimitReached Osiągnięto limit partycji magazynu Dataverse, co powoduje wstrzymanie synchronizacji danych przebiegu przepływu w chmurze.
IngestionRateDataLoss Część historii uruchomień przepływów w chmurze może być niedostępna z powodu dużej liczby uruchomień w tym środowisku.
FlowRunsEventLoadingFailed Nie można załadować zdarzeń przebiegu przepływu w chmurze w bieżącym środowisku. W związku z tym niektóre historyczne dane przebiegu przepływu w chmurze mogą być niedostępne.
FlowRunsTTlSettingFailedMessage Nie można pobrać ustawienia TTL (czas wygaśnięcia) środowiska dla przebiegów przepływu w chmurze. W związku z tym niektóre historyczne dane przebiegu przepływu w chmurze mogą być niedostępne.
ElasticTableNoRoleForUser Użytkownik, który jest właścicielem jednego lub więcej przepływów, nie ma uprawnień do odczytu tabeli FlowRun w Dataverse, więc historia niektórych przepływów w chmurze nie jest zapisywana w tabeli FlowRun w Dataverse. Przyczyną jest to, że użytkownik nie może być ustawiony jako właściciel.

Znane ograniczenia

  • Rekordy FlowRun są przypisywane do określonego właściciela po ich wpisaniu do tabeli, więc pojęcie udostępnionych rekordów FlowRun dla udostępnionych przepływów nie jest obecnie obsługiwane.
  • Właściciele przepływów muszą mieć co najmniej uprawnienia do odczytu tabeli FlowRun, aby przechowywać rekordy przebiegu w Dataverse. System zapisuje rekordy FlowRun do tabeli, a następnie własność jest przypisywana do podstawowego właściciela przepływu. Jeśli właściciel podstawowy przepływu nie ma uprawnień do odczytu tabeli FlowRun, rekord FlowRun nie jest przechowywany, a kod FlowEvent.EventCode tabeli ElasticTableNoRoleForUser jest widoczny w tabeli FlowEvent. Aby rozwiązać tę sytuację, należy się upewnić, że właściciele przepływu mają uprawnienie do odczytu tabeli FlowRun.
  • Obecnie w tabelach elastycznych obowiązuje limit 20 GB na partycję. Dalsze wstawianie rekordów uruchamiania, tylko dla tego konkretnego użytkownika, zakończy się niepowodzeniem po osiągnięciu limitu.
  • Rekordy FlowRun mogą zostać zablokowane i pominięte, jeśli użytkownik ma dużo przepływów przy wysokiej wydajności. W przypadku ograniczania w tabeli FlowEvent jest tworzony wpis sygnalizujący, że uruchomienia zostały pominięte, a zestaw danych jest niekompletny.
  • Nie zalecamy używania jednostek FlowRun i FlowLog jako elementów docelowych wyzwalacza Po dodaniu, zmodyfikowaniu lub usunięciu wiersza . Ta akcja powoduje nieskończoną pętlę, ponieważ rekordy są tworzone w tych tabelach przy każdym uruchomieniu przepływu.

Uwaga

Podstawowy strumień danych używany do zasilania wstawiania rekordów przebiegu przepływu w chmurze nie jest transakcyjny, a zatem nie jest w 100% bez strat. Niewielka utrata danych w tym strumieniu danych może wystąpić z powodu tymczasowych, jednorazowych problemów z działaniem usługi. Te brakujące rekordy nie są reprezentowane przez FlowEvent. Historia wykonania przepływu w ramach szczegółów przepływu w portalu usługi Power Automate ma charakter transakcyjny, dlatego zapewnia widok przebiegów bez strat.

Często zadawane pytania

Dlaczego wszystkie moje środowiska mają wartość FlowRunTimeToLiveInSeconds równą zero?

Jeśli we wszystkich środowiskach wartość FlowRunTimeToLiveInSeconds w tabeli Organization wynosi zero, może to oznaczać jedną z następujących sytuacji:

  1. Jeśli dane FlowRun nie są dostępne, środowiska mogły nie zostać automatycznie włączone na potrzeby pozyskiwania danych FlowRun, ponieważ nie było wystarczającej dostępnej pojemności magazynu bazy danych usługi Dataverse.
  2. Jeśli dane FlowRun były wcześniej dostępne, administrator mógł wyłączyć pozyskiwanie nowych rekordów.

Czy zapisywanie historii uruchamiania przepływu w chmurze w Dataverse zużywa limit żądań Power Platform?

Zapisywanie historii uruchamiania przepływu w chmurze w Dataverse jako danych FlowRun nie wlicza się do limitów żądań Power Platform. Interfejsy API wykonywane w celu odczytu danych FlowRun zaliczają się do limitów żądań Power Platform.

W jaki sposób te dane są porównywane z danymi dostępnymi w programie Application Insights?

Administratorzy mogą skonfigurować Application Insights w celu dostarczania danych monitorowania z wykonań przepływów Power Automate. Dane Application Insights są:

  • Bardziej kompletne z powodu problemów z potokiem danych uzyskujących dane FlowRun.
  • Głębsze, ponieważ zawierają informacje o wyzwalaczach i wykonywanych akcjach.
  • Mogą być korelowane z danymi Power Apps i Dataverse Application Insights za pośrednictwem identyfikatorów korelacji.

Centrum automatyzacji