Instrumentacja aplikacji do monitorowania

Ukończone

Na poziomie podstawowym "instrumentacja" umożliwia aplikacji przechwytywanie danych telemetrycznych. Istnieją dwie metody instrumentowania aplikacji:

  • Instrumentacja automatyczna (autoinstrumentacja)
  • Instrumentacja ręczna

Autoinstrumentacja umożliwia zbieranie danych telemetrycznych za pośrednictwem konfiguracji bez dotykania kodu aplikacji. Chociaż jest to wygodniejsze, wydaje się być mniej konfigurowalne. Nie jest ona również dostępna we wszystkich językach. Zobacz Obsługiwane środowiska i języki autoinstrumentacji. Gdy jest dostępna automatycznainstrumentacja, najłatwiej jest włączyć usługę Azure Monitor Application Insights.

Instrumentacja ręczna jest kodowaniem względem interfejsu API Application Insights lub OpenTelemetry. W kontekście użytkownika zazwyczaj odnosi się to do instalowania zestawu SDK specyficznego dla języka w aplikacji. Oznacza to, że musisz samodzielnie zarządzać aktualizacjami najnowszej wersji pakietu. Tej opcji można użyć, jeśli musisz wykonać niestandardowe wywołania zależności lub wywołania interfejsu API, które nie są domyślnie przechwytywane za pomocą autoinstrumentacji. Istnieją dwie opcje instrumentacji ręcznej:

Włączanie za pomocą zestawów SDK usługi Application Insights

Wystarczy zainstalować zestaw SDK usługi Application Insights w następujących okolicznościach:

  • Wymagane są niestandardowe zdarzenia i metryki
  • Wymagana jest kontrola nad przepływem danych telemetrycznych
  • Automatyczna instrumentacja nie jest dostępna (zazwyczaj ze względu na ograniczenia języka lub platformy)

Aby użyć zestawu SDK, należy zainstalować mały pakiet instrumentacji w aplikacji, a następnie instrumentować aplikację internetową, wszystkie składniki w tle i JavaScript na stronach internetowych. Aplikacja i jej składniki nie muszą być hostowane na platformie Azure. Instrumentacja monitoruje aplikację i kieruje dane telemetryczne do zasobu usługi Application Insights przy użyciu unikatowego tokenu.

Lista wersji i nazw zestawu SDK jest hostowana w usłudze GitHub. Aby uzyskać więcej informacji, odwiedź stronę Wersja zestawu SDK.

Włączanie za pośrednictwem platformy OpenTelemetry

Firma Microsoft współpracowała z uczestnikami projektu z dwóch wcześniej popularnych projektów telemetrycznych typu open source, OpenCensus i OpenTracing. Razem pomogliśmy utworzyć pojedynczy projekt OpenTelemetry. Usługa OpenTelemetry obejmuje współtworzenie wszystkich głównych dostawców usług w chmurze i zarządzania wydajnością aplikacji (APM) i mieszka w ramach natywnej platformy przetwarzania w chmurze (CNCF). Microsoft jest platynowym członkiem CNCF.

Niektóre starsze terminy w usłudze Application Insights są mylące ze względu na zbieżność branży w technologii OpenTelemetry. W poniższej tabeli przedstawiono te różnice. Terminy OpenTelemetry zastępują terminy usługi Application Insights.

Szczegółowe dane dotyczące aplikacji OpenTelemetry
Autokolektory Biblioteki instrumentacji
Kanał Eksporter
Bez kodu /oparte na agencie Autoinstrumentacja
Ślady Dzienniki
Żądania Zakresy serwerów
Zależności Inne typy span (klient, wewnętrzny itp.)
Identyfikator operacji Identyfikator śledzenia
Identyfikator lub identyfikator nadrzędny operacji Identyfikator zakresu