Udostępnij za pośrednictwem


Analiza użycia za pomocą usługi Application Insights

Które funkcje aplikacji internetowej lub mobilnej są najbardziej popularne? Czy użytkownicy osiągną swoje cele w aplikacji? Czy wypadają w określonych punktach i czy wracają później? Usługa Application Insights pomaga uzyskać zaawansowany wgląd w sposób, w jaki użytkownicy korzystają z aplikacji. Za każdym razem, gdy aktualizujesz aplikację, możesz ocenić, jak dobrze działa dla użytkowników. Dzięki tej wiedzy możesz podejmować decyzje oparte na danych dotyczące następnego cyklu programowania.

Wysyłanie danych telemetrycznych z aplikacji

Najlepsze środowisko jest uzyskiwane przez zainstalowanie usługi Application Insights zarówno w kodzie serwera aplikacji, jak i na stronach internetowych. Składniki klienta i serwera aplikacji wysyłają dane telemetryczne z powrotem do witryny Azure Portal na potrzeby analizy.

  1. Kod serwera: zainstaluj odpowiedni moduł dla ASP.NET, platformy Azure, języka Java, Node.js lub inną aplikację.

    • Jeśli nie chcesz instalować kodu serwera, utwórz zasób usługi Application Insights.
  2. Kod strony internetowej: użyj zestawu SDK języka JavaScript do zbierania danych ze stron internetowych. Zobacz Wprowadzenie do zestawu SDK języka JavaScript.

    Uwaga

    31 marca 2025 r. zostanie zakończone świadczenie pomocy technicznej dla pozyskiwania klucza instrumentacji. Pozyskiwanie klucza instrumentacji będzie nadal działać, ale nie udostępnimy już aktualizacji ani obsługi funkcji. Przejście do parametry połączenia w celu skorzystania z nowych funkcji.

    Aby dowiedzieć się więcej zaawansowanych konfiguracji monitorowania witryn internetowych, zapoznaj się z artykułem dokumentacji zestawu SDK języka JavaScript.

  3. Kod aplikacji mobilnej: użyj zestawu SDK centrum aplikacji, aby zbierać zdarzenia z aplikacji. Następnie wyślij kopie tych zdarzeń do usługi Application Insights w celu analizy, postępując zgodnie z tym przewodnikiem.

  4. Pobieranie danych telemetrycznych: uruchamianie projektu w trybie debugowania przez kilka minut. Następnie wyszukaj wyniki w okienku Przegląd w usłudze Application Insights.

    Opublikuj aplikację, aby monitorować wydajność aplikacji i dowiedzieć się, co użytkownicy robią z aplikacją.

Eksplorowanie danych demograficznych i statystyk użycia

Dowiedz się, kiedy użytkownicy korzystają z aplikacji i jakie strony są najbardziej zainteresowane. Możesz również dowiedzieć się, gdzie znajdują się twoi użytkownicy, oraz jakie przeglądarki i systemy operacyjne używają.

Raporty Użytkownicy i sesje filtrować dane według stron lub zdarzeń niestandardowych. Raporty segmentują dane według właściwości, takich jak lokalizacja, środowisko i strona. Możesz również dodać własne filtry.

Zrzut ekranu przedstawiający kartę Użytkownicy z wykresem słupkowym.

Szczegółowe informacje po prawej stronie wskazują interesujące wzorce w zestawie danych.

  • Raport Użytkownicy zlicza unikatowych użytkowników, którzy uzyskują dostęp do stron w wybranych okresach. W przypadku aplikacji internetowych użytkownicy są liczone przy użyciu plików cookie. Jeśli ktoś uzyskuje dostęp do witryny za pomocą różnych przeglądarek lub komputerów klienckich lub czyści pliki cookie, są one liczone więcej niż raz.
  • Raport Sesje przedstawia liczbę sesji użytkowników, które uzyskują dostęp do witryny. Sesja reprezentuje okres aktywności zainicjowany przez użytkownika i kończy się okresem braku aktywności przekraczającym pół godziny.

Aby uzyskać więcej informacji na temat narzędzi Użytkownicy, Sesje i Zdarzenia, zobacz Użytkownicy, sesje i analiza zdarzeń w usłudze Application Insights.

Przechowywanie: Ilu użytkowników wraca?

Przechowywanie pomaga zrozumieć, jak często użytkownicy wracają do korzystania z aplikacji na podstawie kohort użytkowników, którzy wykonali niektóre działania biznesowe w określonym przedziale czasu. Masz następujące możliwości:

  • Dowiedz się, jakie konkretne funkcje powodują, że użytkownicy wracają więcej niż inni.
  • Formuj hipotezy oparte na rzeczywistych danych użytkownika.
  • Ustal, czy przechowywanie jest problemem w produkcie.

Zrzut ekranu przedstawiający skoroszyt Przechowywania zawierający informacje o tym, jak często użytkownicy wracają do korzystania z aplikacji.

Możesz użyć kontrolek przechowywania u góry, aby zdefiniować określone zdarzenia i zakresy czasu w celu obliczenia przechowywania. Wykres w środku przedstawia wizualną reprezentację całkowitego procentu przechowywania według określonego zakresu czasu. Wykres na dole reprezentuje indywidualne przechowywanie w określonym przedziale czasu. Ten poziom szczegółowości pozwala zrozumieć, co robią użytkownicy i co może mieć wpływ na zwracanie użytkowników na bardziej szczegółowy stopień szczegółowości.

Aby uzyskać więcej informacji na temat skoroszytu przechowywania, zobacz Analiza przechowywania użytkowników dla aplikacji internetowych za pomocą usługi Application Insights.

Niestandardowe zdarzenia biznesowe

Aby zrozumieć interakcje użytkowników w aplikacji, wstaw wiersze kodu w celu rejestrowania zdarzeń niestandardowych. Te zdarzenia śledzą różne akcje użytkownika, takie jak wybór przycisku lub ważne wydarzenia biznesowe, takie jak zakupy lub zwycięstwa w grze.

Możesz również użyć wtyczki Autocollection Click Analytics do zbierania zdarzeń niestandardowych.

W niektórych przypadkach widoki stron mogą reprezentować przydatne zdarzenia, ale ogólnie nie są prawdziwe. Użytkownik może otworzyć stronę produktu bez zakupu produktu.

W przypadku określonych zdarzeń biznesowych możesz wykresować postęp użytkowników w witrynie. Możesz dowiedzieć się, jakie są ich preferencje dotyczące różnych opcji i gdzie wypadają lub mają trudności. Dzięki tej wiedzy możesz podejmować świadome decyzje dotyczące priorytetów na liście prac programistycznych.

Zdarzenia mogą być rejestrowane po stronie klienta aplikacji:

      appInsights.trackEvent({name: "incrementCount"});

Lub zdarzenia mogą być rejestrowane po stronie serwera:

    var tc = new Microsoft.ApplicationInsights.TelemetryClient();
    tc.TrackEvent("CreatedAccount", new Dictionary<string,string> {"AccountType":account.Type}, null);
    ...
    tc.TrackEvent("AddedItemToCart", new Dictionary<string,string> {"Item":item.Name}, null);
    ...
    tc.TrackEvent("CompletedPurchase");

Wartości właściwości można dołączyć do tych zdarzeń, aby można było filtrować lub dzielić zdarzenia podczas inspekcji w portalu. Standardowy zestaw właściwości jest również dołączany do każdego zdarzenia, takiego jak anonimowy identyfikator użytkownika, który umożliwia śledzenie sekwencji działań poszczególnych użytkowników.

Dowiedz się więcej o zdarzeniach niestandardowych i właściwościach.

Fragmentuj i zdarzenia kostki

W narzędziach Użytkownicy, Sesje i Zdarzenia można wyciąć i podzielić zdarzenia niestandardowe według użytkownika, nazwy zdarzenia i właściwości.

Zrzut ekranu przedstawiający kartę Zdarzenia przefiltrowane według elementu AnalyticsItemsOperation i podzielone według identyfikatora AppID.

Za każdym razem, gdy korzystasz z dowolnego środowiska użycia, wybierz ikonę Otwórz ostatnie uruchomienie zapytania , aby wrócić do bazowego zapytania.

Zrzut ekranu przedstawiający okienko Sesja usługi Application Insights w witrynie Azure Portal. Wyróżniono ikonę Otwórz ostatnie uruchomienie zapytania.

Następnie możesz zmodyfikować zapytanie bazowe, aby uzyskać informacje, których szukasz.

Oto przykład bazowego zapytania dotyczącego widoków stron. Przejdź dalej i wklej go bezpośrednio do edytora zapytań, aby go przetestować.

// average pageView duration by name
let timeGrain=5m;
let dataset=pageViews
// additional filters can be applied here
| where timestamp > ago(1d)
| where client_Type == "Browser" ;
// calculate average pageView duration for all pageViews
dataset
| summarize avg(duration) by bin(timestamp, timeGrain)
| extend pageView='Overall'
// render result in a chart
| render timechart

Projektowanie telemetrii za pomocą aplikacji

Podczas projektowania każdej funkcji aplikacji należy wziąć pod uwagę, jak zamierzasz zmierzyć jej sukces z użytkownikami. Zdecyduj, jakie zdarzenia biznesowe chcesz rejestrować, i kod wywołań śledzenia dla tych zdarzeń do aplikacji od samego początku.

A | Testowanie B

Jeśli nie masz pewności, który wariant funkcji jest bardziej pomyślny, wydaj zarówno, jak i pozwól różnym użytkownikom uzyskać dostęp do każdego wariantu. Zmierz powodzenie każdego wariantu, a następnie przejdź do ujednoliconej wersji.

W tej technice dołączasz unikatowe wartości właściwości do wszystkich danych telemetrycznych wysyłanych przez każdą wersję aplikacji. Można to zrobić, definiując właściwości w aktywnym obiekcie TelemetryContext. Te domyślne właściwości są uwzględniane w każdym komunikacie telemetrii wysyłanym przez aplikację. Obejmuje ona zarówno komunikaty niestandardowe, jak i standardowe dane telemetryczne.

W portalu usługi Application Insights przefiltruj i podziel dane na wartości właściwości, aby można było porównać różne wersje.

Aby wykonać ten krok, skonfiguruj inicjator telemetrii:

    // Telemetry initializer class
    public class MyTelemetryInitializer : ITelemetryInitializer
    {
        // In this example, to differentiate versions, we use the value specified in the AssemblyInfo.cs
        // for ASP.NET apps, or in your project file (.csproj) for the ASP.NET Core apps. Make sure that
        // you set a different assembly version when you deploy your application for A/B testing.
        static readonly string _version = 
            System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
            
        public void Initialize(ITelemetry item)
        {
            item.Context.Component.Version = _version;
        }
    }

W przypadku aplikacji ASP.NET Core dodaj nowy inicjator telemetrii do kolekcji usługi Wstrzykiwanie zależności w Program.cs klasie .

using Microsoft.ApplicationInsights.Extensibility;

builder.Services.AddSingleton<ITelemetryInitializer, MyTelemetryInitializer>();

Następne kroki