Najlepsze rozwiązania dotyczące architektury dla usługi Application Insights

Application Insights to rozszerzalna usługa zarządzania wydajnością aplikacji, której można użyć do monitorowania aplikacji na żywo i automatycznego wykrywania anomalii wydajności. Zawiera zaawansowane narzędzia analityczne ułatwiające diagnozowanie problemów i zrozumienie sposobu interakcji użytkowników z aplikacją. Ten przewodnik po architekturze zawiera najlepsze rozwiązania dotyczące usługi Application Insights oparte na pięciu filarach filarów platformy Azure Well-Architected Framework.

Zakres technologii

Ten przewodnik koncentruje się na powiązanych decyzjach dotyczących następujących zasobów platformy Azure:

  • Application Insights
  • Obszary robocze usługi Log Analytics

Note

Usługa Application Insights przechowuje i uwidacznia dane w obszarze roboczym usługi Log Analytics. Podczas oceniania metryk zachowaj usługę Log Analytics jako krytyczną zależność od usługi Application Insights. Aby uzyskać więcej informacji, zobacz tematWell-Architected Framework perspective on Log Analytics (Perspektywa platformyWell-Architected Framework w usłudze Log Analytics).

Reliability

Celem filaru niezawodności jest zapewnienie ciągłej funkcjonalności dzięki tworzeniu wystarczającej odporności i możliwości szybkiego odzyskiwania po awariach.

Zasady projektowania systemów niezawodnych zapewniają strategię projektową wysokiego poziomu stosowaną do poszczególnych składników, przepływów systemowych i całego systemu.

Lista kontrolna projektowania obciążenia

Rozpocznij strategię projektu na podstawie listy kontrolnej przeglądu niezawodności projektu. Określ jego znaczenie dla wymagań biznesowych i pamiętaj o zależnościach od usługi Log Analytics. Rozszerz strategię w celu uwzględnienia większej liczby podejść zgodnie z potrzebami.

  • Dostosuj projekt monitorowania aplikacji do celów biznesowych i unikaj niepotrzebnej złożoności. Określ liczbę potrzebnych zasobów usługi Application Insights i miejsce ich wdrażania.

  • Skonfiguruj próbkowanie na podstawie istotności danych. Zidentyfikuj przepływy użytkownika i systemu obciążenia, określ zdarzenia, które chcesz zebrać, i odpowiednio skonfiguruj próbkowanie.

  • Utwórz kompleksowy plan odporności.

    1. Zacznij od przeprowadzenia analizy trybu awarii, aby zidentyfikować potencjalne scenariusze, gdy usługa Application Insights może zakończyć się niepowodzeniem lub stanie się niedostępna. Przyczyny te mogą obejmować problemy z siecią, problemy z uwierzytelnianiem lub przerwy w działaniu usługi.
    2. Określ, jak powinna zachowywać się praca aplikacji, jeśli usługa Application Insights jest nieosiągalna podczas rozruchu lub w trakcie działania, na podstawie istotności monitorowania aplikacji dla celów biznesowych. Definiowanie i dokumentowanie oczekiwanego zachowania obciążenia.
    3. Przetestuj plan odporności. Można na przykład zweryfikować błędy sieci przy użyciu reguły sieciowej grupy zabezpieczeń i uwierzytelnić błędy, zmieniając parametry połączenia.
  • Zaplanuj odporność i odzyskiwanie obszaru roboczego, definiując cele dla składników zbierania danych.

    1. Oceń krytyczne znaczenie zbieranych danych i określ, czy należy je odzyskać.
    2. Przejrzyj limity usług dla obszarów roboczychusługi Application Insights i Log Analytics, aby zrozumieć ograniczenia dotyczące zbierania i przechowywania danych oraz innych aspektów usługi.
    3. Rozważ przejście do dedykowanego klastra , aby skorzystać z odporności obszaru roboczego, w którym dostępność telemetrii usługi Application Insights w zdefiniowanym okresie przechowywania ma krytyczne znaczenie dla działania firmy.
    4. Użyj ustawień diagnostycznych , aby wyeksportować dzienniki i metryki platformy do wybranego miejsca docelowego (na przykład konta magazynu) na potrzeby tworzenia kopii zapasowych i odzyskiwania.
  • Zaimplementuj strategię terminowego i niezawodnego skalowania w celu zaplanowania wzrostu pozyskiwania danych. Monitorowanie i dostosowywanie limitów próbkowania i pozyskiwania danych w miarę wzrostu ruchu w celu uniknięcia utraty danych z powodu próbkowania lub przekroczenia dziennego limitu. Pomaga to zapewnić efektywne skalowanie procesów pozyskiwania danych wraz ze wzrostem ruchu.

  • Upewnij się, że Twoje rozwiązanie do monitorowania aplikacji szybko się odzyskuje w przypadku awarii usługi. Wdrażanie infrastruktury jako kodu i używanie szablonów Bicep do tworzenia lub ponownego tworzenia środowiska użytkownika w usłudze Application Insights, w tym alertów, pulpitów nawigacyjnych i zapytań. Takie podejście pomaga zapewnić szybkie przywrócenie wszystkich krytycznych składników, co minimalizuje przestoje i utrzymuje niezawodność usługi.

Zalecenia dotyczące konfiguracji

Recommendation Benefit
Użyj jednego zasobu usługi Application Insights dla każdego obciążenia i środowiska, takiego jak jeden dla rozwoju, jeden dla testowania i jeden dla środowiska produkcyjnego. Korzystanie z wielu zasobów usługi Application Insights uniemożliwia mieszanie danych telemetrycznych z różnych wersji aplikacji i zapewnia, że błędna konfiguracja jednego zasobu nie ma wpływu na rejestrowanie w innym środowisku.
Wdróż zasób usługi Application Insights w tym samym regionie co bazowy obszar roboczy usługi Log Analytics. Ponieważ usługa Application Insights wymaga, aby usługa Log Analytics działała prawidłowo, posiadanie obu zasobów w różnych regionach podwaja prawdopodobieństwo, że awaria regionalna spowoduje problemy.
Zaimplementuj odporny projekt obszaru roboczego przy użyciu najlepszych rozwiązań dotyczących dzienników usługi Azure Monitor. Najlepsze rozwiązania pomagają zapewnić ciągłe i niezawodne monitorowanie, minimalizując zakłócenia.

Zabezpieczenia

Celem filaru Zabezpieczenia jest zapewnienie gwarancji dotyczących poufności, integralności i dostępności obciążenia.

Zasady projektowania zabezpieczeń zapewniają strategię projektowania wysokiego poziomu w celu osiągnięcia tych celów, stosując podejścia do projektu technicznego usługi Application Insights.

Lista kontrolna projektowania obciążenia

Rozpocznij strategię projektowania na podstawie listy kontrolnej przeglądu projektu pod kątem zabezpieczeń i identyfikowania luk w zabezpieczeniach i mechanizmów kontroli w celu poprawy stanu zabezpieczeń.

  • Przejrzyj punkt odniesienia zabezpieczeń usługi Azure Monitor. Zawiera wskazówki dotyczące najlepszych rozwiązań w zakresie zabezpieczeń, które ułatwiają zabezpieczanie rozwiązań w chmurze na platformie Azure, w tym usługi Application Insights.

  • Zapewnij aktualność instrumentacji usługi Application Insights, aby zapewnić bezpieczeństwo rozwiązania do monitorowania aplikacji. Postępuj zgodnie ze wskazówkami dotyczącymi aktualizacji zestawu SDK i aktualizuj zestawy SDK usługi Application Insights (interfejs API klasyczny) co najmniej raz w roku. Zalecamy stosowanie podobnych rozwiązań dotyczących usługi Azure Monitor OpenTelemetry Distro.

  • Definiowanie strategii obsługi danych osobowych w usłudze Application Insights. Aby zapewnić ciągłą zgodność, regularnie sprawdzaj, czy zbieranie i obsługa danych, w tym adresów IP i danych osobowych, jest zgodne z odpowiednimi przepisami, takimi jak RODO.

  • Tworzenie zamierzonej segmentacji w projekcie monitorowania aplikacji. Określ liczbę potrzebnych zasobów usługi Application Insights .

  • Użyj klucza zarządzanego przez klienta usługi Azure Monitor. Domyślnie dane w usłudze Azure Monitor są szyfrowane przy użyciu kluczy zarządzanych przez firmę Microsoft. Możesz użyć własnego klucza szyfrowania, aby chronić dane i zapisane zapytania w obszarach roboczych. Klucze zarządzane przez klienta w usłudze Azure Monitor zapewniają większą elastyczność zarządzania mechanizmami kontroli dostępu do przechowywanych danych.

  • Kontrolowanie ruchu sieciowego. Rozważ łączność prywatną na potrzeby uzyskiwania dostępu do usług platformy Azure. Łączność prywatna skutecznie izoluje ruch od publicznego Internetu. Przepływy danych dla sieci prywatnej obejmują zarówno operacje pozyskiwania danych, jak i wykonywania zapytań, z których każda jest przeznaczona dla różnych punktów końcowych. Te punkty końcowe można zarządzać niezależnie. Takie podejście umożliwia skonfigurowanie pozyskiwania prywatnego przy zachowaniu dostępu do zapytań publicznych lub odwrotnie. Dzięki temu można zastosować zasady ochrony w głębi systemu, tworząc zlokalizowane mechanizmy kontroli sieci we wszystkich dostępnych granicach sieci.

  • Zwiększ ochronę danych, zabezpieczając systemy magazynowania i ograniczając dostęp. Odwiedź przewodnik po usłudze Log Analytics , aby dowiedzieć się, jak zabezpieczyć zbierane dane.

Zalecenia dotyczące konfiguracji

Recommendation Benefit
Jeśli potrzeby biznesowe i środowisko hostingu nie wymagają instrumentacji ręcznej, rozważ użycie autoinstrumentacji. Takie podejście eliminuje konieczność ręcznego aktualizowania zestawu SDK, nie wymaga zmian w kodzie i eliminuje obciążenie związane z konserwacją kodu instrumentacji. Może również zwiększyć bezpieczeństwo, zapewniając spójne monitorowanie aplikacji bez ręcznej interwencji.
Użyj tożsamości zarządzanych i identyfikatora Entra firmy Microsoft na potrzeby uwierzytelniania i autoryzacji. Eliminuje konieczność zarządzania poświadczeniami, ponieważ platforma Azure zarządza, obraca i chroni te poświadczenia.
Zatrzymaj zbieranie danych osobowych lub zaciemnianie, anonimizowanie lub dostosowywanie zebranych danych. Domyślnie usługa Application Insights nie przechowuje adresów IP. Zalecamy zachowanie tego ustawienia domyślnego. Wyklucza dane z bycia traktowanym jako osobiste i uniemożliwia niezgodnie z wszelkimi wymaganiami dotyczącymi zgodności lub lokalnymi przepisami.
Używaj jednego zasobu usługi Application Insights na każdą aplikację w każdym środowisku. Na przykład użyj jednego do rozwoju, jednego do testowania i jednego do środowiska produkcyjnego. Korzystanie z wielu zasobów usługi Application Insights pomaga zapewnić izolację i bezpieczeństwo danych oraz ułatwia stosowanie konfiguracji specyficznych dla środowiska i kontroli dostępu.
Użyj usługi Azure Private Link , aby uzyskać dostęp do usług platformy Azure za pośrednictwem prywatnego punktu końcowego. Postępuj zgodnie z konfiguracją i ograniczeniami. Unikaj łączenia AMPLS z wieloma sieciami wirtualnymi, które współdzielą ten sam DNS, ponieważ powoduje to błędy związane z prywatnym punktem końcowym. Prawidłowo skonfigurowana topologia AMPLS zwiększa poufność dzienników obciążenia, rejestrując ruch w w pełni prywatnych sieciach.

Optymalizacja kosztów

Optymalizacja kosztów koncentruje się na wykrywaniu wzorców wydatków, określaniu priorytetów inwestycji w krytycznych obszarach i optymalizacji w innych w celu spełnienia budżetu organizacji przy jednoczesnym spełnieniu wymagań biznesowych.

Zasady projektowania optymalizacji kosztów zapewniają strategię projektowania wysokiego poziomu w celu osiągnięcia tych celów i podejmowania kompromisów zgodnie z potrzebami w projekcie technicznym związanym z usługą Application Insights i jego środowiskiem.

Aby uzyskać więcej informacji na temat sposobu obliczania opłat za dane dla podstawowych obszarów roboczych usługi Log Analytics zasobów usługi Application Insights, zobacz Obliczenia i opcje dotyczące kosztów dzienników usługi Azure Monitor.

Lista kontrolna projektowania obciążenia

Rozpocznij strategię projektową, opierając się na liście kontrolnej przeglądu projektu dla optymalizacji kosztów związanych z inwestycjami. Dostosuj projekt tak, aby obciążenie było dostosowane do budżetu przydzielonego dla obciążenia. Projekt powinien korzystać z odpowiednich możliwości platformy Azure, monitorować inwestycje i znajdować możliwości optymalizacji w czasie.

  • Przejrzyj cennik usługi Azure Monitor , aby utworzyć model kosztów. Szacowanie początkowego kosztu, stawek uruchamiania i bieżących kosztów przy użyciu kalkulatora cen. Zwróć uwagę, że usługa Application Insights jest rozliczana poprzez obszar roboczy usługi Log Analytics, do którego przesyłane są dane dziennika.

  • Dostosuj ilość zbieranych danych.

    • Użyj próbkowania na poziomie usługi Application Insights, aby zmniejszyć ruch danych i koszty magazynowania, zachowując statystycznie poprawną analizę danych aplikacji.
    • Usługa Application Insights ma kilka możliwych źródeł dzienników. Użyj poziomów dziennika, aby dostosować i zmniejszyć telemetryczne dane dziennika śledzenia.
  • Ogranicz nieplanowane opłaty za obszar roboczy. Dzienny limit można ustawić zarówno w usłudze Application Insights, jak i w usłudze Log Analytics.

  • Regularnie przeglądaj koszty, takie jak ceny regionalne i dostępne warstwy cenowe. Najważniejsze koszty dla większości implementacji Azure Monitor dotyczą zwykle gromadzenia i przechowywania danych w obszarach roboczych usługi Log Analytics. Aby uzyskać więcej informacji, zobacz Azure Monitor Logs cost calculations and options (Obliczenia kosztów i opcje usługi Azure Monitor) lub sekcję Cost Optimization (Optymalizacja kosztów ) w przewodniku dotyczącym usługi Log Analytics.

  • Regularnie usuwaj lub optymalizuj starsze, niepotrzebne i niedostatecznie wykorzystywane składniki rozwiązania do monitorowania aplikacji.Edytuj ApplicationInsights.config , aby wyłączyć moduły kolekcji, których nie potrzebujesz. Możesz na przykład zdecydować, że liczniki wydajności lub dane zależności nie są wymagane. Użyj filtrów telemetrycznych lub procesorów w kodzie, aby pomóc zoptymalizować koszty składników, nie rejestrując ani próbkując nieistotnych wywołań.

  • Optymalizowanie kosztów środowiska. Określ liczbę potrzebnych zasobów usługi Application Insights i miejsce ich wdrożenia. Optymalizowanie poziomów dzienników i metryk zebranych w poszczególnych środowiskach w celu efektywnego zarządzania kosztami. Na przykład środowiska produkcyjne mogą wymagać różnych poziomów rejestrowania w porównaniu z środowiskami deweloperskimi.

  • Optymalizowanie kosztów przepływu. Użyj filtrów telemetrycznych lub procesorów w kodzie, aby pomóc zoptymalizować koszty składników, nie rejestrując ani próbkując nieistotnych wywołań.

  • Optymalizowanie kosztów kodu. Upewnij się, że używasz zaktualizowanych zestawów SDK usługi Application Insights. Wcześniejsze wersje SDK ASP.NET Core i SDK usługi procesu roboczego domyślnie zbierały wiele liczników, które były gromadzone jako metryki niestandardowe. Użyj nowszych wersji, aby określić tylko wymagane liczniki.

  • Optymalizowanie czasu personelu. Użyj środowisk usługi Application Insights, takich jak mapa aplikacji i widoki awarii i wydajności, a także dostosuj zapisane zapytania, pulpity nawigacyjne i skoroszyty dla określonych potrzeb związanych z obciążeniem. Śledź wdrożenia i inne zdarzenia za pomocą adnotacji wydania.

Zalecenia dotyczące konfiguracji

Recommendation Benefit
Ustaw dzienny limit zarówno w usłudze Application Insights, jak i w usłudze Log Analytics, ale spróbuj go uniknąć. Osiągnięcie dziennego limitu może spowodować, że dane nie zostaną zapisane w obszarze roboczym usługi Log Analytics. Ustawienie limitu jest ryzykownym, ale skutecznym rozwiązaniem ograniczania wydatków.
W przypadku standardowych testów dostępności potrzeba testowania z różnych lokalizacji może się różnić między środowiskami produkcyjnymi i przedprodukcyjnymi. Odpowiednio zmniejsz liczbę lokalizacji. Testy generują koszty, więc miej wystarczającą ilość testów, aby zapewnić zaufanie do kondycji obciążenia systemu.
Wdróż zasób usługi Application Insights w tym samym regionie co bazowy obszar roboczy usługi Log Analytics. Takie podejście minimalizuje opóźnienia i zmniejsza koszty związane z telemetrią między regionami.
Zmniejsz częstotliwość próbkowania dla mniej krytycznych przepływów i zwiększ ją dla przepływów o wysokiej krytyczności. Użyj filtrów telemetrycznych na potrzeby telemetrii nieistotnej. Ilość danych jest czynnikiem kosztowym podczas projektowania integracji usługi Application Insights. Zmniejszenie ilości danych dzięki współczynnikom próbek i filtrom jest potencjalnym rozwiązaniem do kontrolowania zbierania danych.
Ogranicz liczbę wywołań Ajax , które można zgłaszać w każdym widoku strony, lub wyłącz raportowanie Ajax. Jeśli wyłączysz wywołania Ajax, wyłączysz również korelację języka JavaScript. Ilość danych jest czynnikiem kosztowym podczas projektowania integracji usługi Application Insights dla aplikacji klienckiej. Zmniejszenie wolumenu danych poprzez zmniejszenie raportowania z poziomu stron klienta jest potencjalnym rozwiązaniem do kontrolowania kosztów zbierania danych.
Użyj wstępnie zagregowanych metryk , aby wydajniej obsługiwać dane telemetryczne o dużej ilości i ograniczyć użycie metryk niestandardowych. Jednak opcja usługi Application Insights umożliwiająca włączanie alertów dotyczących niestandardowych wymiarów metryk może również zwiększyć koszty. Użyj metryk, aby zapewnić uzyskanie oszczędności kosztów. Wszystkie metryki niestandardowe są przechowywane zarówno w dziennikach, jak i magazynach metryk. Wstępnie agregowane metryki zmniejszają koszty przechowywania związane z metrykami niestandardowymi.
Jeśli potrzeby biznesowe i środowisko hostingu nie wymagają instrumentacji ręcznej, rozważ użycie autoinstrumentacji. Takie podejście optymalizuje czas inżynierii oprogramowania, eliminując konieczność ręcznego aktualizowania zestawu SDK, zmian kodu związanych z nowymi wersjami oraz nakładu pracy związanej z konserwacją kodu instrumentacji.
Ogranicz niepożądane śledzenie:

• Usuń kontrole kondycji. Zobacz Filtrowanie hałaśliwych śladów w Optymalizacji kosztów przy użyciu dystrybucji OpenTelemetry dla Azure Monitor.
• W przypadku usługi Azure Kubernetes Service (AKS) dostosuj dzienniki płaszczyzny sterowania i płaszczyzny danych.
• W przypadku usługi Azure Functions dostosuj poziomy dzienników i zakres w celu optymalizacji ilości dzienników.
Ograniczenie niechcianego rejestrowania śledzenia zmniejsza ilość przechowywanych danych, co może obniżyć koszty magazynowania.

Doskonałość operacyjna

Doskonałość operacyjna koncentruje się przede wszystkim na procedurach dotyczących praktyk programistycznych, możliwości obserwacji i zarządzania wydaniami.

Zasady projektowania doskonałości operacyjnej zapewniają ogólną strategię projektowania w celu osiągnięcia tych celów, uwzględniając wymagania operacyjne pracy.

Lista kontrolna projektowania obciążenia

Rozpocznij strategię projektowania na podstawie listy kontrolnej przeglądu projektu dla doskonałości operacyjnej w celu zdefiniowania procesów umożliwiających obserwowanie, testowanie i wdrażanie związane z usługą Application Insights.

  • Zintegruj specjalizacje członków zespołu monitorowania aplikacji w niezawodny zestaw rozwiązań do instrumentowania i monitorowania obciążenia. Wybierz metodę instrumentacji (na przykład automatycznąinstrumentację lub instrumentację ręczną), która jest najlepsza dla Twojej sytuacji na podstawie potrzeb biznesowych i obsługiwanych środowisk, języków i dostawców zasobów.

  • Zapewnij optymalną wydajność rozwiązania do monitorowania aplikacji, zachowując aktualność instrumentacji usługi Application Insights. Postępuj zgodnie ze wskazówkami dotyczącymi aktualizacji zestawu SDK i aktualizuj zestawy SDK usługi Application Insights (interfejs API klasyczny) co najmniej raz w roku. Zaleca się stosowanie podobnych praktyk dla dystrybucji usługi Azure Monitor OpenTelemetry. Korzystanie z najnowszego zestawu SDK lub wersji dystrybucji zapewnia dostęp do usług pomocy technicznej oraz zapewnia najnowsze funkcje i poprawki błędów.

  • Formalizowanie procesów ideowych i planowania. Użyj integracji elementu roboczego, aby łatwo tworzyć elementy robocze w usłudze GitHub lub Azure DevOps, w których osadzone są odpowiednie dane usługi Application Insights.

  • Skonfiguruj usługę Application Insights, aby monitorować dostępność i czas odpowiedzi aplikacji internetowej. Używaj wbudowanych funkcji, takich jak zapytania i pulpity nawigacyjne w zależności od konkretnych potrzeb biznesowych. Po wdrożeniu aplikacji skonfiguruj testy cykliczne, aby monitorować dostępność i czas odpowiedzi.

  • Opracowuj efektywne operacje awaryjne. Użyj alertów i skoroszytów , aby zidentyfikować zdarzenia i reagować na nie. Jasno zdefiniuj obowiązki człowieka. Na przykład określ, kto ponownie uruchamia aplikację, jeśli obciążenie ulegnie awarii.

  • Jasno zdefiniuj bezpieczne praktyki wdrażania zadań roboczych. Użyj adnotacji wydania w ramach strategii ograniczania błędów, aby śledzić wdrożenia i inne zdarzenia.

Zalecenia dotyczące konfiguracji

Recommendation Benefit
Jeśli potrzeby biznesowe i środowisko hostingu nie wymagają instrumentacji ręcznej, rozważ użycie autoinstrumentacji. Takie podejście optymalizuje czas inżynierii oprogramowania, eliminując konieczność ręcznego aktualizowania zestawu SDK, zmian kodu związanych z nowymi wersjami oraz nakładu pracy związanej z konserwacją kodu instrumentacji.
Jeśli twoja firma wymaga ręcznej instrumentacji, zastosuj dystrybucję Azure Monitor OpenTelemetry. Unikaj przyszłej wymuszonej migracji z zestawów SDK usługi Application Insights (klasycznego interfejsu API), stosując metodę instrumentacji opartej na protokole OpenTelemetry.
Użyj parametrów połączenia. Zwiększenie niezawodności pozyskiwania danych telemetrycznych i usunięcie zależności od globalnych punktów końcowych pozyskiwania.

Efektywność operacyjna

Efektywność wydajności polega na utrzymywaniu doświadczenia użytkownika nawet wtedy, gdy występuje wzrost obciążenia dzięki zarządzaniu wydajnością. Strategia obejmuje skalowanie zasobów, identyfikowanie i optymalizowanie potencjalnych wąskich gardeł oraz optymalizowanie pod kątem szczytowej wydajności.

Zasady projektowania wydajności operacyjnej zapewniają ogólną strategię projektowania w celu osiągnięcia tych celów wydajności w stosunku do oczekiwanego użycia.

Lista kontrolna projektowania obciążenia

Rozpocznij strategię projektowania w oparciu o listę kontrolną przeglądu projektu pod kątem wydajności operacyjnej. Zdefiniuj punkt odniesienia oparty na kluczowych wskaźnikach wydajności dla usługi Application Insights.

  • Zdefiniuj cele wydajności związane z wymaganiami dotyczącymi monitorowania aplikacji. Określ liczbę potrzebnych zasobów usługi Application Insights .

  • Przeprowadź planowanie pojemności. Zapoznaj się ze wzorcami użycia i ilością napływających danych oraz przejrzyj wskaźniki przetwarzania danych i częstotliwość próbkowania.

  • Wybierz odpowiedni region rozwiązania do monitorowania aplikacji. Wdróż zasób usługi Application Insights w tym samym regionie co bazowy obszar roboczy usługi Log Analytics, aby zapobiec problemom z opóźnieniami i niezawodnością. Zobacz Tworzenie zasobu.

  • Oceń liczbę potrzebnych zasobów usługi Application Insights . Monitorowanie aplikacji lub składników aplikacji z jednym zasobem usługi Application Insights zapewnia całościowy widok, ale może również mieć wpływ na wydajność środowisk, takich jak mapa aplikacji i użycie.

  • Optymalizowanie kodu i infrastruktury. Regularnie oceniaj niestandardowy kod usługi Application Insights, aby zmniejszyć złożoność, zwiększyć wydajność i upewnić się, że kod jest aktualny.

  • Zapoznaj się ze wzorcami użycia i ilością danych, przeglądając pozyskiwanie i częstotliwość próbkowania. Aby zoptymalizować użycie danych, dostosuj je odpowiednio i zmniejsz liczbę metryk niestandardowych, na przykład ITelemetryProcessor.

  • Stale optymalizuj wydajność. Użyj wbudowanych funkcji, takich jak wykrywanie inteligentne, zapytania i pulpity nawigacyjne , aby znaleźć składniki, które wykazują pogarszającą się wydajność.

Zalecenia dotyczące konfiguracji

Recommendation Benefit
Użyj jednego zasobu usługi Application Insights na obciążenie na środowisko (na przykład jednego dla programowania, jednego dla środowiska przejściowego i jednego dla środowiska produkcyjnego). Takie podejście uniemożliwia mieszanie danych telemetrycznych z różnych wersji aplikacji.
Jeśli ma to zastosowanie, upewnij się, że częstotliwość profilowania i czas trwania są odpowiednio ustawione. Unikaj dodawania nadmiernego obciążenia do uruchomionego procesu.

Zasady platformy Azure

Platforma Azure udostępnia obszerny zestaw wbudowanych zasad związanych z usługą Application Insights i jej zależnościami. Niektóre z wcześniejszych zaleceń można poddawać audytowi za pomocą usługi Azure Policy. Możesz na przykład sprawdzić, czy:

  • Składniki usługi Application Insights powinny zapobiegać pobieraniu dzienników z publicznych sieci lub źródeł, które Microsoft Entra ID nie uwierzytelnia.
  • Należy wymusić łączenie składnika usługi Application Insights z obszarem roboczym usługi Log Analytics w celu szyfrowania dzienników.

Aby uzyskać kompleksowy ład, zapoznaj się z wbudowanymi definicjami usługi Azure Policy dla usługi Application Insights i innymi zasadami , które mogą mieć wpływ na bezpieczeństwo rozwiązania do monitorowania wydajności aplikacji.

Rekomendacje usługi Azure Advisor

Azure Advisor to spersonalizowany konsultant ds. chmury, który pomaga stosować najlepsze rozwiązania w celu zoptymalizowania wdrożeń platformy Azure.

Aby uzyskać więcej informacji, zobacz Azure Advisor.