Poprawa wydajności, stabilności i niezawodności rozwiązania

Rozwiązania służą do dystrybucji Power Platform obiektów, takich jak aplikacje, tabele, przepływy, zasoby sieci Web i wtyczki. W tym artykule przedstawiono funkcję sprawdzania rozwiązań, zaawansowane narzędzie, które wykonuje kompleksową analizę statyczną obiektów rozwiązania względem zestawu reguł najlepszych rozwiązań. Korzystając z narzędzia do sprawdzania rozwiązań, można szybko zidentyfikować problematyczne wzorce w składnikach i otrzymać szczegółowe raporty, które wyróżniają problemy, składniki, których dotyczy problem, oraz udostępniają łącza do dokumentacji dotyczącej sposobu rozwiązania każdego problemu. Dzięki temu Twoje rozwiązania są zoptymalizowane pod kątem wydajności, stabilności i niezawodności.

Przykładowe wyniki i szczegóły modułu sprawdzania rozwiązań

Moduł sprawdzania rozwiązania współpracuje z rozwiązaniami niezarządzanymi, które mogą być eksportowane ze środowiska.

Narzędzie do sprawdzania rozwiązań można uruchomić z Power Apps (make.powerapps.com) lub przy użyciu programu PowerShell.

W jaki sposób narzędzie do sprawdzania rozwiązań może Ci pomóc

Aby sprostać złożonym wymaganiom biznesowym, twórcy często mogą zdecydować się na wysoce zaawansowane rozwiązania, które dostosowują się i rozszerzają Power Platform. Implementacje zaawansowane wiążą się ze zwiększonym ryzykiem, gdzie pojawiają się problemy wydajności, stabilności i niezawodności, co może negatywnie wpływać na użytkownika końcowego. Zidentyfikowanie i zrozumienie sposobu rozwiązywania tych problemów może być skomplikowane i czasochłonne. Dzięki funkcji sprawdzania rozwiązań możesz w ciągu kilku sekund przeprowadzić kontrolę rozwiązania, które korzysta z zestawu reguł najlepszych rozwiązań, aby szybko zidentyfikować problematyczne wzorce. Po zakończeniu sprawdzania otrzymasz szczegółowy raport w Power Apps wiadomości e-mail, który zawiera listę zidentyfikowanych problemów, składników i kodu, których dotyczy problem, oraz linki do dokumentacji opisującej sposób rozwiązania każdego problemu.

Moduł sprawdzania rozwiązań analizuje te składniki rozwiązania:

  • Niestandardowe działania przepływu pracy Dataverse
  • Zasoby sieci Web (HTML i JavaScript) Dataverse
  • Konfiguracje Dataverse, takie jak etapy komunikatu SDK
  • Przepływy Power Automate (za pośrednictwem sprawdzania przepływu)
  • Wyrażenia Power Fx (z pomocą narzędzia sprawdzania aplikacji)

Uwaga

  • Moduł sprawdzania rozwiązań obsługuje zmienne globalne dla ECMAScript 2015 (ES6) i do składni ECMAScript 2018 (ES9). Gdy JavaScript zostanie wykryty przy użyciu zmiennych globalnych późniejszych niż ES6 lub składni późniejszej niż ES9, zgłaszany jest problem ze składnią nieobsługiwaną przez WWW dla zasobu WWW.
  • Użycie modułu sprawdzania rozwiązań nie gwarantuje, że import rozwiązania zakończy się pomyślnie. Testy analizy statycznej wykonywane względem rozwiązania nie znają skonfigurowanego stanu środowiska docelowego, a powodzenie importu może zależeć od innych rozwiązań lub konfiguracji w środowisku.

Uruchom moduł sprawdzania rozwiązań

  1. Zaloguj się do usługi Power Apps.

  2. W lewym okienku wybierz Rozwiązania. Jeśli elementu nie ma w okienku panelu bocznego, wybierz …Więcej, a następnie wybierz żądany element.

  3. Obok rozwiązania niezarządzanego, który chcesz analizować, wybierz ..., wskaż Moduł sprawdzania rozwiązań, a następnie wybierz Uruchom.

    Uruchom polecenie sprawdzania rozwiązań.

  4. Przycisk polecenia Sprawdź rozwiązanie ma wskaźnik ładowania i zauważysz Uruchomione… w kolumnie Sprawdzanie rozwiązania na liście Rozwiązanie.

Stan modułu sprawdzania rozwiązań

Uwaga

  • Sprawdzanie rozwiązania może potrzebować kilku minut, aby wykonać analizę.
  • Otrzymasz powiadomienie e-mail i powiadomienie w obszarze Powiadomienia witryny Power Apps, gdy kontrola zostanie zakończona.
  1. Wyświetl raport po zakończeniu kontroli.

Anuluj kontrolę

Po przesłaniu kontroli rozwiązania w środowisku, kontrolę można anulować za pośrednictwem okienka stanu w prawym górnym rogu strony Rozwiązania.

Po anulowaniu kontroli kontrola rozwiązania przestanie działać i stan kontroli rozwiązania wróci do poprzedniego stanu.

Stany modułu sprawdzania rozwiązań

Podczas instalowania modułu sprawdzania rozwiązania w środowisku, kolumn Sprawdzanie rozwiązania stanie się dostępna na liście Rozwiązania. Ta kolumna ukazuje stany analizy rozwiązania dla rozwiązania.

województwo Opis
Nie została uruchomiona. Rozwiązanie nigdy nie było analizowane.
Uruchomiono Rozwiązanie jest analizowane.
Nie można zakończyć Analiza rozwiązania była wymagana, ale analiza nie została ukończona pomyślnie.
Wyniki Data i godzina Analiza rozwiązania została ukończona i wyniki są dostępne do pobrania.
Nie można zakończyć. Wyniki Data i godzina Najnowsze żądanie analizy nie powiodło się. Ostatnie udane wyniki można pobrać.
Wyewidencjonowane przez Microsoft Jest to rozwiązanie zarządzane przez firmę Microsoft. Analiza rozwiązania nie może zostać przeprowadzona na tych rozwiązaniach.
Wyewidencjonowane przez Wydawcę Jest to rozwiązanie zarządzane przez firmę Microsoft. Obecnie analiza rozwiązania nie jest dostępna dla tych rozwiązań.

Przejrzyj raport sprawdzania rozwiązania

Po zakończeniu sprawdzania rozwiązania można wyświetlić raport z analizy w portalu lub pobrać raport z przeglądarki sieci Web. W portalu dostępne są opcje sortowania wyników według Problemu, Lokalizacji lub Ważności oraz wyświetlania szczegółowych informacji o problemach wykrytych w rozwiązaniu.

  1. W lewym okienku wybierz Rozwiązania. Jeśli elementu nie ma w okienku panelu bocznego, wybierz …Więcej, a następnie wybierz żądany element.

  2. Obok rozwiązania niezarządzanego, w którym chcesz przeglądać raport sprawdzania rozwiązania, wybierz ..., wskaż Moduł sprawdzania rozwiązania, a następnie wybierz Przejrzyj wyniki.

  3. Wybierz problem, aby wyświetlić szczegółowe informacje i wytyczne dotyczące rozwiązywania.

    Sprawdzanie rozwiązań, przykładowe wyniki i szczegóły przejść do szczegółów

Wyniki sprawdzania rozwiązań są również dostępne do pobrania. Plik zip modułu sprawdzania rozwiązań jest pobierany do folderu określonego przez przeglądarkę sieci Web. Raport do pobrania jest w formacie Excel i zawiera kilka wizualizacji i kolumny, które pomagają w określaniu wpływu, typu i lokalizacji każdego problemu zauważonego w rozwiązaniu. Zapewniane jest również łącze do szczegółowych instrukcji dotyczących sposobu rozwiązania tego problemu.

  1. W lewym okienku wybierz Rozwiązania. Jeśli elementu nie ma w okienku panelu bocznego, wybierz …Więcej, a następnie wybierz żądany element.
  2. Obok rozwiązania niezarządzanego, do którego ma zostać pobrany raport sprawdzania rozwiązania, wybierz ..., wskaż Sprawdzanie rozwiązania, a następnie wybierz Pobierz wyniki.
  3. Plik zip modułu sprawdzania rozwiązań jest pobierany do folderu określonego przez przeglądarkę sieci Web.

Poniżej przedstawiono podsumowanie każdej kolumny w raporcie.

Kolumna raportu Opis Dotyczy składnika
Problem Tytuł problemu stwierdzonego w rozwiązaniu. Wszystkie
Kategoria Kategoryzowanie identyfikowanego problemu, takie jak Wydajność, Łatwość obsługi, Użycie, Możliwość obsługi, Projekt, Bezpieczeństwo, Dostępność lub Gotowość do uaktualnienia. wszystkie
Waga błędu Reprezentuje potencjalny wpływ zidentyfikowanego problemu. Dostępne typy wpływów to Krytyczne, Duże, Średnie, Niskie i Do informacji. wszystkie
Wskazówki Łącze do artykułu określającego problem, wpływ i zalecane działanie. Wszystkie
Składnik Składnik rozwiązania, w którym problem zauważono. Wszystkie
Location Lokalizacja i/lub źródłowy plik składnika, w którym problem, który został zidentyfikowany, wystąpił, taki jak zestaw lub nazwa pliku w języku JavaScript. Wszystkie
Numer wiersza Odwołanie numeru wiersza problemu w dotkniętym składniku zasobu sieci Web. Zasoby sieci Web
Moduł Nazwa modułu, gdzie został wykryty problem wskazany w zestawie. Niestandardowa aktywność przepływu pracy
Typ Typ problemu zidentyfikowanego w zestawie. Niestandardowa aktywność przepływu pracy
Element członkowski Członek problemu zidentyfikowanego w zestawie. Niestandardowa aktywność przepływu pracy
Oświadczenie Oświadczenie lub konfiguracja kodu powodujące problem. Wszystkie
Komentarze Szczegółowe informacje o problemie, które zawierają podstawowe kroki naprawcze. wszystkie

Lokalne uruchamianie reguł sprawdzania rozwiązań

W środowisku projektowym można uruchomić reguły sprawdzania rozwiązań, aby wykrywać problemy znacznie wcześniej, gdy zasoby rozwiązania będą się tworzyć. Jest to obecnie obsługiwane w przypadku zasobów sieci web (JavaScript i TypeScript). Aby uzyskać więcej informacji, przejdź do pakietu NPM @microsoft/eslint-plugin-power-apps.

Uruchamianie modułu sprawdzania rozwiązań przy użyciu programu PowerShell

Dostępny jest moduł programu PowerShell, którego można użyć do bezpośredniej interakcji z usługą. Moduł Microsoft.PowerApps.Checker.PowerShell może być użyty do analizy niezarządzanych rozwiązań dla środowisk Power Apps lub do zautomatyzowania i zintegrowania usługi z potokiem budowania i wydawania. Więcej informacji: Omówienie Microsoft.PowerApps.Checker.PowerShell

Reguły najlepszych rozwiązań stosowane przez moduł sprawdzania rozwiązań

W poniższej tabeli wymieniono typy składników, opis reguły, ważność i kategoria. Krytyczne naruszenia są blokowane lub wskazywane podczas konfigurowania ich do wymuszenia sprawdzania rozwiązań w środowiskach zarządzanych. Więcej informacji: Stosowanie sprawdzania rozwiązań w środowiskach zarządzanych

Składnik rozwiązania Nazwa reguły Opis reguły Waga błędu Kategoria
Dodatek typu plug-in lub działanie przepływu pracy meta-remove-dup-reg Należy unikać powtarzających się rejestracji dodatków plug-in Dataverse. Krytyczne Wydajność
Dodatek typu plug-in lub działanie przepływu pracy meta-avoid-reg-no-attribute Dołączanie atrybutów filtrowania do rejestracji dodatków plug-in Dataverse. Średnia Wydajność
Dodatek typu plug-in lub działanie przepływu pracy meta-avoid-reg-retrieve Zachowaj ostrożność w przypadku dodatków typu plug-in Dataverse rejestrowanych dla wiadomości Retrieve i RetrieveMultiple. Średnia Wydajność
Dodatek typu plug-in lub działanie przepływu pracy meta-remove-inactive Usuń nieaktywne konfiguracje Dataverse. Minimum Możliwość konserwacji
Dodatek typu plug-in lub działanie przepływu pracy meta-avoid-crm4-event Nie używaj etapu rejestracji dodatku typu plug-in Microsoft Dynamics CRM 4.0. Średnia Gotowość do uaktualnienia
Dodatek typu plug-in lub działanie przepływu pracy meta-avoid-retrievemultiple-annotation Unikaj rejestrowania wtyczki na RetrieveMultiple adnotacji. Maksimum Sposób użycia
Aplikacja oparta na modelu meta-license-sales-entity-operations Rozwiązanie zawiera encje z ograniczonymi komunikatami i operacjami SDK, które wymagają ważnej licencji Dynamics 365. Minimum Licencjonowanie
Aplikacja oparta na modelu meta-license-fieldservice-customcontrols Rozwiązanie zawiera niestandardowe kontrolki, które wymagają ważnej licencji Dynamics 365 Field Service. Minimum Licencjonowanie
Aplikacja oparta na modelu meta-license-fieldservice-entity-operations Rozwiązanie zawiera encje z ograniczonymi komunikatami SDK i operacjami, które wymagają ważnej licencji Dynamics 365 Field Service. Minimum Licencjonowanie
Zasoby internetowe use-async Wchodź w interakcję z zasobami HTTP i HTTPS asynchronicznie. Krytyczne Wydajność
Zasoby internetowe avoid-modals Unikaj używania modalnych okien dialogowych. Maksimum Możliwość obsługi
Zasoby internetowe avoid-dom-form Maksimum Możliwość obsługi
Zasoby internetowe avoid-dom-form-event Maksimum Możliwość obsługi
Zasoby internetowe avoid-crm2011-service-odata Nie ustawiaj za cel punktu końcowego Microsoft Dynamics CRM 2011 OData 2.0. Krytyczne Gotowość do uaktualnienia
Zasoby internetowe avoid-crm2011-service-soap Nie ustawiaj za cel usług Microsoft Dynamics CRM 2011 SOAP. Krytyczne Gotowość do uaktualnienia
Zasoby internetowe avoid-loadtheme Nie używaj interfejsu loadTheme API Fluent v8. Minimum Możliwość obsługi
Zasoby internetowe avoid-browser-specific-api Nie używaj starszych interfejsów API programu Internet Explorer ani dodatków plug-in przeglądarki. Krytyczne Gotowość do uaktualnienia
Zasoby internetowe avoid-unpub-api Maksimum Możliwość obsługi
Zasoby internetowe avoid-window-top Maksimum Możliwość obsługi
Zasoby internetowe avoid-2011-api Nie używaj przestarzałego modelu obiektu Microsoft Dynamics CRM 2011. Zamiast tego należy postępować zgodnie z dokumentacją Dataverse interfejsu API sieci Web. Maksimum Gotowość do uaktualnienia
Zasoby internetowe use-relative-uri Nie używaj bezwzględnych adresów URL punktu końcowego Dataverse. Średnia Możliwość konserwacji
Zasoby internetowe use-cached-webresource Średnia Wydajność
Zasoby internetowe use-client-context Używaj kontekstów klienta. Średnia Gotowość do uaktualnienia
Zasoby internetowe use-navigation-api Użyj parametrów interfejsów API nawigacji. Średnia Gotowość do uaktualnienia
Zasoby internetowe use-offline Średnia Gotowość do uaktualnienia
Zasoby internetowe do-not-make-parent-assumption Maksimum Zaprojektuj
Zasoby internetowe use-org-setting Użyj ustawień organizacyjnych. Średnia Gotowość do uaktualnienia
Zasoby internetowe use-global-context Średnia Gotowość do uaktualnienia
Zasoby internetowe use-grid-api Użyj interfejsu API siatki. Średnia Gotowość do uaktualnienia
Zasoby internetowe use-utility-dialogs Średnia Sposób użycia
Zasoby internetowe avoid-isActivityType Zastąp metodę Xrm.Utility.isActivityType przy użyciu nowych Xrm.Utility.gettableMetadata i nie używaj w regułach wstążki. Średnia Gotowość do uaktualnienia
Zasoby internetowe meta-avoid-silverlight Użycie zasobu sieci Web Silverlight jest przestarzałe. Średnia Gotowość do uaktualnienia
Zasoby internetowe remove-debug-script Unikaj dołączania skryptu debugowania w środowiskach nieprogramistycznych. Średnia Sposób użycia
Zasoby internetowe use-strict-mode Jeśli jest to możliwe używaj trybu strict. Średnia Sposób użycia
Zasoby internetowe use-strict-equality-operators Używaj operatorów równości typu strict. Średnia Sposób użycia
Zasoby internetowe avoid-eval Nie używaj tej eval funkcji ani jej funkcjonalnych odpowiedników. Krytyczne Zabezpieczenia
Zasoby internetowe avoid-with Nie używać operatora 'with'. Maksimum Wydajność
Zasoby internetowe remove-alert Nie używaj funkcji „alert” ani jej odpowiedników funkcjonalnych. Średnia Sposób użycia
Zasoby internetowe remove-console Należy unikać stosowania metod w konsoli. Średnia Sposób użycia
Zasoby internetowe avoid-ui-refreshribbon Należy unikać używania refreshRibbon przy ładowaniu formularza i EnableRule. Krytyczne Wydajność
Zasoby internetowe use-getsecurityroleprivilegesinfo Unikaj userSettings.securityRolePrivileges. W zamian użyj obiektu userSettings.getSecurityRolePrivilegesInfo. Maksimum Wydajność
Zasoby internetowe use-appsidepane-api Użyj Xrm.App.sidePanes.createPane zamiast Xrm.Panels.loadPanel. Średnia Gotowość do uaktualnienia
Zasoby internetowe web-sdl-no-cookie Pliki cookie w przeglądarkach HTTP to stary mechanizm przechowywania danych po stronie klienta z nieodłącznym ryzykiem i ograniczeniami. Zamiast tego użyj Web Storage, IndexedDB lub innych nowoczesnych metod. Średnia Zabezpieczenia
Zasoby internetowe web-sdl-no-document-domain Zapisuje właściwości document.domain, musi być przeglądane, aby uniknąć pominięcia kontroli z tego samego źródła. Używanie domen najwyższego poziomu, takich jak azurewebsites.net, jest zakazane. Średnia Zabezpieczenia
Zasoby internetowe web-sdl-no-document-write Wywołania metod document.write lub document.writeln mogą bezpośrednio modyfikować specyfikacje DOM bez oczyszczania i należy ich unikać. Zamiast tego należy użyć document.createElement () lub podobnych metod. Średnia Zabezpieczenia
Zasoby internetowe web-sdl-no-html-method Bezpośrednie wywołania metody html() często (na przykład w frameworku jQuery) manipulują DOM bez żadnej sanityzacji i należy tego unikać. Zamiast tego należy użyć document.createElement () lub podobnych metod. Średnia Zabezpieczenia
Zasoby internetowe web-sdl-no-inner-html Przypisania do właściwości innerHTML lub outerHTML zmieniają specyfikacje DOM bez oczyszczania i należy ich unikać. Zamiast tego należy użyć document.createElement () lub podobnych metod. Średnia Zabezpieczenia
Zasoby internetowe web-sdl-no-insecure-url Niezabezpieczone protokoły, takie jak HTTP lub FTP, powinny zostać zastąpione ich szyfrowanymi odpowiednikami (HTTPS, FTPS), aby uniknąć wysyłania potencjalnie poufnych danych za pośrednictwem niezaufanych sieci w postaci zwykłego tekstu. Średnia Zabezpieczenia
Zasoby internetowe web-sdl-no-msapp-exec-unsafe Wywołanie MSApp.execUnsafeLocalFunction() pomija sprawdzanie poprawności skryptów i należy go unikać. Średnia Zabezpieczenia
Zasoby internetowe web-sdl-no-postmessage-star-origin Zawsze należy podać konkretne docelowe miejsce, a nie * podczas wysyłania danych do innych okien przy użyciu funkcji postMessage w celu uniknięcia wycieku danych poza strefę zaufania. Średnia Zabezpieczenia
Zasoby internetowe web-sdl-no-winjs-html-unsafe Wywołania metody WinJS.Utilities.setInnerHTMLUnsafe() i podobne metody nie powodują sprawdzania poprawności danych wejściowych i należy ich unikać. Zamiast tego należy użyć WinJS.Utilities.setInnerHTML(). Średnia Zabezpieczenia
Aplikacja kanwy app-formula-issues-high Przejdź do Power Apps dokumentacji formuły , aby uzyskać dodatkowe informacje. Krytyczne Zaprojektuj
Aplikacja kanwy app-formula-issues-medium Aby uzyskać więcej szczegółowych informacji, zobacz Opis odwołań do formuł Power Apps. Średnia Zaprojektuj
Aplikacja kanwy app-formula-issues-low Aby uzyskać więcej szczegółowych informacji, zobacz Opis odwołań do formuł Power Apps. Minimum Zaprojektuj
Aplikacja kanwy app-use-delayoutput-text-input W niektórych scenariuszach użyj opóźnionego ładowania, aby zwiększyć wydajność. Średnia Wydajność
Aplikacja kanwy app-reduce-screen-controls Ograniczenie liczby kontrolek aplikacji zwiększających wydajność. Średnia Wydajność
Aplikacja kanwy app-include-accessible-label Użyj jawnych etykiet, aby zwiększyć dostępność aplikacji. Średnia Dostępność
Aplikacja kanwy app-include-alternative-input Upewnij się, że wszystkie elementy interaktywne są dostępne dla innych składników. Średnia Dostępność
Aplikacja kanwy app-avoid-autostart Unikaj używania autostartu na graczach w aplikacji. Średnia Dostępność

Zobacz też

Sprawdzone metody postępowania i wskazówki dotyczące Dataverse
Najważniejsze wskazówki i wytyczne dotyczące aplikacji opartych na modelu
Typowe problemy i rozwiązania dla modułu sprawdzania rozwiązań

Uwaga

Czy możesz poinformować nas o preferencjach dotyczących języka dokumentacji? Wypełnij krótką ankietę. (zauważ, że ta ankieta jest po angielsku)

Ankieta zajmie około siedmiu minut. Nie są zbierane żadne dane osobowe (oświadczenie o ochronie prywatności).