Analisis penggunaan dengan Application Insights

Fitur mana dari aplikasi web atau seluler Anda yang paling populer? Apakah pengguna Anda mencapai tujuan mereka dengan aplikasi Anda? Apakah mereka keluar pada titik tertentu, dan apakah mereka kemudian kembali? Application Insights membantu Anda untuk mendapatkan wawasan yang dalam tentang cara pengguna menggunakan aplikasi Anda. Setiap kali Anda memperbarui aplikasi, Anda dapat menilai seberapa baik aplikasi tersebut berfungsi untuk pengguna. Dengan pengetahuan ini, Anda dapat membuat keputusan berdasarkan data tentang siklus pengembangan berikutnya.

Mengirim telemetri dari aplikasi Anda

Pengalaman terbaik diperoleh dengan menginstal Application Insights baik di kode server aplikasi Anda maupun di halaman web Anda. Komponen klien dan server aplikasi Anda mengirim telemetri kembali ke portal Microsoft Azure untuk analisis.

  1. Kode server: Pasang modul yang sesuai untuk ASP.NET, Azure, Java, Node.js, atau aplikasi lain milik Anda.

  2. Kode halaman web: Gunakan JavaScript SDK untuk mengumpulkan data dari halaman web. Lihat Mulai menggunakan JavaScript SDK.

    Catatan

    Pada tanggal 31 Maret 2025, dukungan untuk penyerapan kunci instrumentasi akan berakhir. Penyerapan kunci instrumentasi akan berjalan terus, namun kami tidak akan lagi menyediakan pembaruan atau dukungan terhadap fitur tersebut. Transisi ke string koneksi untuk memanfaatkan kemampuan baru.

    Untuk mempelajari lebih lanjut konfigurasi tingkat lanjut untuk pemantauan situs web, lihat artikel referensi SDK JavaScript.

  3. Kode aplikasi seluler: Gunakan SDK App Center untuk mengumpulkan peristiwa dari aplikasi Anda. Kemudian kirimkan salinan peristiwa ini ke Application Insights untuk dianalisis dengan mengikuti panduan ini.

  4. Dapatkan telemetri: Jalankan proyek Anda dalam mode debug selama beberapa menit. Kemudian cari hasil di panel Gambaran umum di Application Insights.

    Publikasikan aplikasi Anda untuk memantau performa aplikasi Anda dan untuk mencari tahu apa yang dilakukan pengguna dengan aplikasi Anda.

Menjelajahi demografi dan statistik penggunaan

Cari tahu kapan orang menggunakan aplikasi Anda dan halaman apa yang paling mereka minati. Anda juga dapat mengetahui di mana pengguna Anda berada dan browser serta sistem operasi apa yang mereka gunakan.

Laporan Pengguna dan Sesi memfilter data Anda menurut halaman atau peristiwa kustom. Laporan menyegmentasikan data berdasarkan properti seperti lokasi, lingkungan, dan halaman. Anda juga dapat menambahkan filter Anda sendiri.

Cuplikan layar yang menampilkan tab Pengguna dengan bagan batang.

Wawasan yang tepat menunjukkan pola yang menarik dalam sekumpulan data.

  • Laporan Pengguna menghitung jumlah pengguna unik yang mengakses halaman Anda dalam sebuah periode waktu yang Anda pilih. Untuk aplikasi web, pengguna dihitung dengan menggunakan cookie. Jika seseorang mengakses situs Anda dengan browser atau komputer klien yang berbeda, atau menghapus cookie mereka, mereka dihitung lebih dari sekali.
  • Laporan Sesi menavigasi jumlah sesi pengguna yang mengakses situs Anda. Sesi mewakili periode aktivitas yang dimulai oleh pengguna dan disimpulkan dengan periode tidak aktif melebihi setengah jam.

Untuk informasi selengkapnya tentang alat Pengguna, Sesi, dan Peristiwa, lihat Pengguna, sesi, dan analisis peristiwa di Application Insights.

Retensi: Berapa banyak pengguna yang kembali?

Retensi membantu Anda memahami seberapa sering pengguna Anda kembali untuk menggunakan aplikasi mereka, berdasarkan kelompok pengguna yang melakukan beberapa tindakan bisnis selama wadah waktu tertentu. Anda dapat:

  • Memahami fitur spesifik apa yang menyebabkan pengguna kembali lebih sering daripada yang lain.
  • Membuat hipotesis berdasarkan data pengguna nyata.
  • Menentukan apakah retensi merupakan sebuah masalah dalam produk Anda.

Cuplikan layar yang menunjukkan buku kerja Retensi, yang menampilkan informasi tentang seberapa sering pengguna kembali menggunakan aplikasi mereka.

Anda dapat menggunakan kontrol retensi di bagian atas untuk menentukan peristiwa dan rentang waktu tertentu untuk menghitung retensi. Grafik di tengah memberikan representasi visual dari persentase retensi keseluruhan dari rentang waktu yang ditentukan. Grafik di bagian bawah mewakili retensi individu dalam periode waktu tertentu. Tingkat detail ini memungkinkan Anda untuk memahami apa yang dilakukan pengguna Anda dan apa yang mungkin memengaruhi pengguna yang kembali pada granularitas yang lebih rinci.

Untuk informasi selengkapnya tentang buku kerja Retensi, lihat Analisis retensi pengguna untuk aplikasi web dengan Application Insights.

Peristiwa bisnis kustom

Untuk memahami interaksi pengguna di aplikasi Anda, sisipkan baris kode untuk mencatat peristiwa kustom. Peristiwa ini melacak berbagai tindakan pengguna, seperti pilihan tombol, atau peristiwa bisnis penting, seperti pembelian atau kemenangan game.

Anda juga dapat menggunakan plug-in Autocollection Click Analytics untuk mengumpulkan peristiwa kustom.

Dalam beberapa kasus, tampilan halaman dapat mewakili peristiwa yang berguna, tetapi hal itu secara umum tidak benar. Seorang pengguna dapat membuka halaman produk tanpa membeli produknya.

Dengan peristiwa bisnis tertentu, Anda bisa memetakan proses pengguna melalui situs Anda. Anda dapat mengetahui preferensi mereka untuk opsi yang berbeda dan di mana mereka keluar atau mengalami kesulitan. Dengan pengetahuan ini, Anda dapat membuat keputusan berdasarkan informasi tentang prioritas dalam backlog pengembangan Anda.

Peristiwa dapat dicatat dari sisi klien aplikasi:

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

Atau peristiwa dapat dicatat dari sisi server:

    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");

Anda dapat melampirkan nilai properti ke peristiwa tersebut sehingga Anda bisa memfilter atau memisahkan peristiwa saat Anda memeriksanya di portal. Sekumpulan properti standar dilampirkan ke setiap peristiwa, seperti ID pengguna anonim, yang memungkinkan Anda untuk melacak urutan aktivitas seorang pengguna individu.

Pelajari lebih lanjut peristiwa kustom dan properti kustom.

Membagi dan memisahkan peristiwa

Di alat Pengguna, Sesi, dan Peristiwa, Anda dapat membagi peristiwa kustom berdasarkan pengguna, nama peristiwa, dan properti.

Cuplikan layar yang menampilkan tab Peristiwa yang difilter oleh AnalyticsItemsOperation dan dipisahkan menurut AppID.

Setiap kali Anda berada dalam pengalaman penggunaan apa pun, pilih ikon Buka kueri yang terakhir dijalankan untuk membawa Anda kembali ke kueri yang mendasarinya.

Cuplikan layar panel Sesi Application Insights di portal Azure. Ikon Buka kueri eksekusi terakhir disorot.

Anda kemudian dapat mengubah kueri yang mendasar untuk mendapatkan jenis informasi yang Anda cari.

Berikut adalah contoh kueri yang mendasar tentang tampilan halaman. Lanjutkan dan tempelkan langsung ke editor kueri untuk mengujinya.

// 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

Merancang telemetri dengan aplikasi

Saat Anda merancang setiap fitur aplikasi Anda, pertimbangkan bagaimana Anda akan memperkirakan keberhasilannya dengan pengguna Anda. Tentukan peristiwa bisnis apa yang perlu Anda rekam, dan tuliskan kode panggilan pelacakan untuk peristiwa tersebut ke aplikasi Anda sejak awal.

Pengujian A | B

Jika Anda tidak yakin varian fitur mana yang lebih berhasil, rilis keduanya dan biarkan pengguna yang berbeda mengakses setiap varian. Ukur keberhasilan setiap varian, lalu transisi ke versi terpadu.

Dalam teknik ini, Anda melampirkan nilai properti unik ke semua telemetri yang dikirim oleh setiap versi aplikasi Anda. Anda dapat melakukannya dengan menentukan properti di TelemetryContext aktif. Properti default ini disertakan dalam setiap pesan telemetri yang dikirim oleh aplikasi. Ini termasuk pesan kustom dan telemetri standar.

Di portal Application Insights, filter dan pisahkan data Anda pada nilai properti sehingga Anda bisa membandingkan versi yang berbeda.

Untuk melakukan langkah ini, siapkan penginisialisasi telemetri:

    // 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;
        }
    }

Untuk aplikasi ASP.NET Core , tambahkan penginisialisasi telemetri baru ke koleksi layanan Injeksi Dependensi di Program.cs kelas .

using Microsoft.ApplicationInsights.Extensibility;

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

Langkah berikutnya