Analisis log yang dihasilkan sistem menggunakan Application Insights

Anda dapat menyambungkan aplikasi kanvas Anda ke Application Insights, fitur Azure Monitor. Application Insights Termasuk alat analisis canggih untuk membantu Anda mendiagnosis masalah dan memahami apa yang sebenarnya dilakukan pengguna dengan aplikasi Anda. Anda dapat mengumpulkan informasi untuk membantu mendorong keputusan bisnis yang lebih baik dan meningkatkan kualitas aplikasi.

Dalam mulai cepat ini, kami menggunakan aplikasi kanvas bernama Kudos untuk menjelajahi konsep log yang dihasilkan sistem di aplikasi kanvas dan menerapkannya ke aplikasi Anda. Contoh aplikasi Kudos adalah bagian dari rangkaian aplikasi keterlibatan karyawan yang tersedia untuk diunduh dari Starter Kit Pengalaman Karyawan.

Prasyarat

Catatan

Untuk melihat informasi telemetri, admin penyewa Anda harus mengaktifkan wawasan aplikasi Canvas. Masuk sebagai admin di Power Platform Pusat Admin. Buka Pengaturan > Pengaturan penyewa Wawasan > aplikasi kanvas. Di panel wawasan aplikasi Canvas, atur sakelar ke Aktif dan simpan perubahan Anda. Untuk informasi selengkapnya, lihat Pengaturan penyewa.

Opsional

  • Unduh dan instal aplikasi Kudos dari Starter Kit Pengalaman Karyawan. Anda juga dapat menggunakan aplikasi yang ada.

Buat sumber daya Application Insights

Sebelum dapat mengirim log yang dihasilkan sistem dari aplikasi, Anda perlu membuat Application Insights sumber daya untuk menyimpan peristiwa.

  1. Masuk ke portal Azurel.

  2. Cari Application Insights:

    Application Insights.

  3. Buat sumber daya Application Insights:

    Tambahkan sumber daya Application Insights.

  4. Masukkan nilai yang sesuai, lalu pilih Tinjau + buat.

    Untuk rincian lebih lanjut, baca Buat sumber daya Application Insights.

    Buat sumber daya.

  5. Application Insights Setelah instans dibuat, salin Kunci Instrumentasi dalam gambaran umum instans untuk digunakan dalam langkah mendatang.

    Salin Kunci Instrumentasi.

Sambungkan ke aplikasi Anda ke Application Insights

Catatan

  • Saat menentukan kunci instrumentasi, perhatikan bahwa data dapat dikirim ke seluruh penyewa. Peristiwa pelacakan dikirim ke sumber daya App Insights yang sesuai dengan kunci instrumentasi yang Anda tetapkan untuk aplikasi Anda, meskipun instans App Insights target berada di penyewa yang berbeda dari aplikasi.
  • Berhati-hatilah saat mengimpor file .msapp yang ada karena kunci instrumentasi untuk App Insights mungkin ada. Buka aplikasi secara manual setelah impor untuk memverifikasi bahwa kunci instrumentasi App Insights yang benar sedang digunakan.
  1. Masuk ke Power Apps.

  2. Pilih Aplikasi di panel navigasi kiri. Dari daftar aplikasi, pilih aplikasi Kudos, lalu pilih Edit:

    Edit aplikasi Kudos.

    Catatan

    Anda juga dapat membuat aplikasi baru atau mengedit aplikasi mana pun yang ada.

  3. Pilih objek Aplikasi di tampilan pohon navigasi kiri dan tempel Kunci Instrumentasi:

    Tambahkan Kunci Instrumentasi.

  4. Simpan dan Publikasikan aplikasi Anda.

  5. Mainkan aplikasi yang dipublikasikan dan telusuri layar yang berbeda.

Saat Anda menelusuri layar aplikasi, peristiwa secara otomatis dicatat Application Insights, termasuk detail penggunaan seperti:

  • Dari mana aplikasi diakses
  • Perangkat mana yang digunakan
  • Jenis browser yang digunakan

Penting

Anda harus memutar aplikasi yang dipublikasikan untuk mengirimkan aktivitas ke Application Insights. Aktivitas tidak dikirim ke Application Insights ketika Anda mempratinjau aplikasi di Power Apps Studio.

Lihat aktivitas di Application Insights

  1. Masuk ke portal Azure dan buka sumber daya Application Insights yang Anda buat sebelumnya.

  2. Gulir ke bawah di panel navigasi kiri, lalu pilih Pengguna dalam bagian Penggunaan.

    Catatan

    Tampilan Pengguna menampilkan detail penggunaan aplikasi, seperti:

    • Jumlah pengguna yang melihat aplikasi
    • Jumlah sesi pengguna
    • Jumlah peristiwa yang dicatat
    • Detail sistem operasi dan versi browser pengguna
    • Wilayah dan lokasi pengguna

    Pelajari selengkapnya tentang analisis pengguna, sesi, dan peristiwa di Application Insights.

  3. Pilih salah satu sesi pengguna untuk menelusuri rincian spesifik. Anda dapat melihat informasi seperti panjang sesi dan layar yang dikunjungi:

    Rincian penggunaan untuk pengguna.

  4. Pilih tampilan Peristiwa di panel navigasi kiri di bawah bagian Penggunaan . Anda dapat melihat ringkasan semua layar yang dilihat di semua sesi aplikasi:

    Rincian aktivitas untuk aplikasi.

Tip

Lebih banyak Application Insights fitur tersedia, seperti:

Buat aktivitas pelacakan kustom

Anda dapat menulis pelacakan kustom secara langsung ke Application Insights dan mulai menganalisis informasi yang spesifik dengan skenario Anda. Fungsi Trace memungkinkan Anda mengumpulkan:

  • Informasi penggunaan terperinci untuk kontrol di layar
  • Pengguna tertentu mana yang mengakses aplikasi Anda
  • Kesalahan apa yang terjadi

Pelacakan juga dapat membantu mendiagnosis masalah karena Anda dapat mengirimkan jejak informasi sebagai pengguna yang menelusuri melalui aplikasi Anda dan melakukan tindakan yang berbeda. Melacak pesan yang dikirim untuk Application Insights memiliki salah satu dari tiga tingkat keparahan:

  • Informasi
  • Peringatan
  • Kesalahan

Tergantung pada skenario, Anda dapat memilih untuk mengirim pesan pelacakan dengan tingkat keparahan yang sesuai. Anda dapat mengkueri data dan mengambil tindakan tertentu berdasarkan tingkat keparahan.

Catatan

Jika Anda mencatat data pribadi apa pun, perhatikan kewajiban Anda sehubungan dengan berbagai undang-undang dan peraturan privasi. Lihat Pusat Kepercayaan Microsoft dan Portal Kepercayaan Layanan untuk informasi selengkapnya.

Sekarang buat komponen baru di aplikasi Anda untuk mengumpulkan umpan balik di setiap layar, dan tulis peristiwanya Application Insights.

  1. Masuk ke Power Apps.

  2. Pilih Aplikasi di panel navigasi kiri. Dari daftar aplikasi, pilih aplikasi Kudos, lalu pilih Edit.

    Catatan

    Anda juga dapat membuat aplikasi baru atau mengedit aplikasi yang ada.

  3. Pilih pilihan Komponen pada Tampilan pohon:

    Komponen.

  4. Pilih Komponen baru, lalu ubah ukuran lebar menjadi 200 dan tinggi menjadi 75:

    Tinggi dan lebar.

  5. Pilih Sisipkan dari menu, lalu pilih Ikon untuk menambahkan Emoji - Murung dan Emoji - Senyum:

    Tambahkan ikon.

  6. Pilih Properti kustom baru untuk membuat properti kustom:

    Buat properti kustom.

  7. Masukkan Nama properti dan Nama tampilan seperti FeedbackSceen.

  8. Masukkan properti Keterangan.

  9. Pilih Jenis properti sebagai Input dan Jenis data sebagai Layar:

    Properti kustom.

    Catatan

    Properti input memungkinkan Anda untuk menangkap nama layar dan komponennya sehingga Anda dapat mencatat informasi ini ke Application Insights.

  10. Pilih komponen pada Tampilan Hierarki, pilih Tindakan lainnya(), lalu pilih Ganti nama untuk mengganti nama komponen dengan nama yang bermakna seperti FeedbackComponent.

    Ubah nama komponen dan ikon.

  11. Pilih ikon, pilih Tindakan lainnya(), lalu pilih Ubah nama untuk mengganti nama ikon dengan nama yang bermakna, seperti FrownIcon dan SmileIcon ·.

  12. Pilih FrownIcon, pilih properti OnSelect, lalu masukkan ekspresi berikut di bilah rumus:

    Trace(
       "App Feedback",
       TraceSeverity.Information,
           {
             UserName: User().FullName,
             UserEmail: User().Email,
             Screen: FeedbackComponent.FeedbackScreen.Name,
             FeedbackValue: "-1"
           }
         );
    Notify("Thanks for your feedback!");
    

    Rumus ikon murung.

    Catatan

    Ekspresi rumus mengirimkan UserName, UserEmail, Layar, dan Tanggapan (dengan nilai -1) ke Application Insights.

  13. Pilih SmileIcon, pilih properti OnSelect, lalu masukkan ekspresi berikut di bilah rumus:

    Trace(
       "App Feedback",
       TraceSeverity.Information,
           {
             UserName: User().FullName,
             UserEmail: User().Email,
             Screen: FeedbackComponent.FeedbackScreen.Name,
             FeebackValue: "1"
           }
         );
    Notify("Thanks for your feedback!");
    
  14. Tambahkan komponen ke salah satu layar di aplikasi Anda:

    Tambahkan komponen tanggapan.

  15. Pilih Simpan, lalu pilih Publikasikan untuk menyimpan dan mempublikasikan aplikasi Anda.

  16. Putar aplikasi yang dipublikasikan, dan kirim tanggapan senyum dan murung dari layar Anda.

    Penting

    Anda harus memutar aplikasi yang dipublikasikan untuk mengirimkan aktivitas ke Application Insights. Aktivitas tidak dikirim ke Application Insights ketika Anda mempratinjau aplikasi di Power Apps Studio.

    Putar aplikasi yang dipublikasikan.

Analisis data di Application Insights

Anda sekarang dapat mulai menganalisis data yang Anda Kirim menggunakan fungsi Pelacakan dari aplikasi Anda di Application Insights.

  1. Masuk ke portal Azure dan buka sumber daya Application Insights yang Anda buat sebelumnya:

    Pilih Application Insights.

  2. Pilih Log di bawah Pemantauan di panel navigasi kiri:

    Pilih Log.

  3. Masukkan kueri berikut dan pilih Jalankan untuk melihat umpan balik yang diterima dari aplikasi Anda:

    traces
    | where message == "App Feedback"
    | order by timestamp
    

    Lihat tanggapan aplikasi.

  4. Pilih baris dalam hasil dan perluas bidang customDimensions.

    Nilai untuk Layar, UserName, UserEmail, dan FeedbackValue untuk aktivitas OnSelect dari ikon senyum atau murung dalam komponen Anda telah direkam. Nilai juga dicatat untuk setiap peristiwa yang dikirim ke Application Insights, seperti appId,appName · , dan appSessionId. ·

    Perluas dimensi kustom.

  5. Dengan kueri contoh berikut, Anda dapat memperluas properti dimensi kustom JSON dan memproyeksikan kolom dalam tampilan hasil.

    traces
        | extend customdims = parse_json(customDimensions)
        | where message == "App Feedback"
        | project timestamp
            , message
            , AppName = customdims.['ms-appName']
            , AppId = customdims.['ms-appId']
            , FeedbackFrom = customdims.UserEmail
            , Screen = customdims.Screen
            , FeedbackValue = customdims.FeedbackValue
        | order by timestamp desc
    

    Perluas kueri customDimensions.

    Tip

    Kueri log sangat kuat. Anda dapat menggunakannya untuk masuk ke beberapa tabel, mengumpulkan data dalam jumlah besar, dan melakukan operasi yang rumit. Pelajari selengkapnya tentang kueri log.

Memantau kesalahan tidak tertangani (eksperimental)

[Bagian ini berisi dokumentasi prarilis dan dapat berubah.]

Penting

  • Ini adalah fitur eksperimental.
  • Fitur eksperimental tidak dibuat untuk penggunaan produksi dan mungkin memiliki fungsionalitas yang dibatasi. Fitur ini tersedia sebelum rilis resmi agar pelanggan bisa memperoleh akses awal dan memberikan tanggapan.

Anda tidak selalu dapat mengantisipasi dan merencanakan semua error yang mungkin terjadi saat aplikasi berjalan. Kesalahan rumus yang tidak ditangani Power Fx dilaporkan kepada pengguna sebagai pesan banner. Mereka juga dapat dilaporkan untuk Application Insights membantu Anda memahami frekuensi dan tingkat keparahannya tanpa bergantung pada pengguna aplikasi Anda untuk melaporkan masalah. Anda juga dapat mengatur peringatan real-time ketika kesalahan runtime terjadi untuk mengambil pendekatan yang lebih proaktif.

Aktifkan penerusan kesalahan ke Application Insights

Anda perlu mengaktifkan pengaturan yang memungkinkan Power Apps untuk meneruskan kesalahan runtime yang tidak ditangani ke Azure Application Insights.

Peringatan

Mengaktifkan pengaturan ini mungkin akan dikenakan biaya tambahan yang terkait dengan penyimpanan log Application Insights.

Untuk mengaktifkan penerusan kesalahan , buka Pengaturan > Fitur mendatang > eksperimental > Penerusan kesalahan ke Azure Application Insights dengan tetap mempertahankan aplikasi kanvas Anda terbuka untuk diedit. Simpan dan publikasikan aplikasi Anda.

Aktifkan Penerusan kesalahan ke Azure Application Insights.

Peristiwa kesalahan di Application Insights

Kesalahan yang tidak ditangani Power Fx yang dialami oleh pengguna saat runtime aplikasi dilaporkan ke tabel pelacakan . Kesalahan yang tidak ditangani dapat diidentifikasi dan dibedakan dari peristiwa kesalahan lainnya dengan pesan peristiwa "Kesalahan yang tidak ditangani." Dimensi "severityLevel" peristiwa ini adalah 3 (TraceSeverity.Error).

Pesan kesalahan rinci diberikan dalam dimensi "kesalahan" properti customDimension. Dalam situasi di mana beberapa kesalahan terjadi selama operasi yang sama, kesalahan dikonsolidasikan dalam dimensi "kesalahan" dari satu peristiwa pelacakan. Pesan error sama seperti yang dilaporkan di Monitor selama sesi debug langsung.

Contoh kueri berikut mengidentifikasi kesalahan yang tidak ditangani dan memperluas semua pesan kesalahan yang disertakan dalam peristiwa pelacakan:

traces
    | where message == "Unhandled error"
    | extend customdims = parse_json(customDimensions)
    | extend errors = parse_json(tostring(customdims.['errors']))
    | mv-expand errors
    | project timestamp
        , itemId //unique identifier for the trace event
        , AppName = customdims.['ms-appName']
        , AppId = customdims.['ms-appId']
        , errors = errors.['Message']
    | order by timestamp desc

Output sampel untuk contoh kueri.

Pelacakan korelasi (eksperimental)

[Bagian ini berisi dokumentasi prarilis dan dapat berubah.]

Penting

  • Ini adalah fitur eksperimental.
  • Fitur eksperimental tidak dibuat untuk penggunaan produksi dan mungkin memiliki fungsionalitas yang dibatasi. Fitur ini tersedia sebelum rilis resmi agar pelanggan bisa memperoleh akses awal dan memberikan tanggapan.

Koneksi ke data dan layanan eksternal sangat penting untuk sebagian besar aplikasi. Pelacakan korelasi menghasilkan dan menyebarkan informasi konteks untuk menggabungkan log yang dihasilkan sistem di seluruh aplikasi kanvas dan koneksinya, tunduk pada batasan tertentu. Sebagai contoh, aplikasi Anda dapat memanggil konektor kustom yang pada gilirannya memanggil Fungsi Azure atau panggilan REST API. Pelacakan korelasi memungkinkan Anda menghubungkan tindakan yang diambil dalam aplikasi dengan panggilan API yang mendasarinya di seluruh tingkatan. Ini dapat berguna dalam pemecahan masalah.

Pelacakan korelasi aplikasi kanvas adalah implementasi pelacakan konteks dan mengikuti spesifikasi W3C.

Aktifkan pelacakan korelasi

Peringatan

Mengaktifkan pengaturan ini mungkin akan dikenakan biaya tambahan yang terkait dengan penyimpanan log Application Insights.

Untuk mengaktifkan fitur pelacakan korelasi, buka Pengaturan > fitur Yang Akan Datang > Eksperimental > Aktifkan pelacakan korelasi Azure Application Insights sambil tetap membuka aplikasi kanvas untuk diedit. Simpan dan publikasikan aplikasi Anda.

Aktifkan pelacakan korelasi Azure Application Insights.

Pembatasan

Menggunakan pelacakan korelasi

Saat diaktifkan, pelacakan korelasi menambahkan peristiwa log baru yang dihasilkan sistem dalam tabel dependensi instans aplikasi Application Insights kanvas. Peristiwa ini direkam pada saat respons dari panggilan jaringan diterima. Aktivitas dependensi menangkap rincian panggilan jaringan, termasuk header permintaan dan respons, kode status respons, dan durasi panggilan.

Aktivitas sampel dicatat dalam tabel dependensi.

Jika layanan tersambung juga terhubung Application Insights, peristiwa log tambahan yang dihasilkan sistem yang menangkap permintaan dihasilkan dalam tabel permintaan instans layanan Application Insights . Beberapa layanan Azure, seperti Azure Functions, dapat dihubungkan tanpa pengkodean apa pun dari portal Microsoft Azure. Aplikasi kanvas atau beberapa aplikasi dan layanan terhubung dapat dihubungkan ke instans yang sama Application Insights .

Aktivitas sampel dicatat dalam tabel permintaan.

Panggilan jaringan untuk konektor yang didukung dapat digabungkan dengan log lain yang dihasilkan sistem pada dimensi "operation_Id". Contoh kueri berikut menunjukkan panggilan jaringan yang dilakukan bersamaan dengan peristiwa pelacakan yang dipancarkan selama sesi aplikasi.

traces | union dependencies | union requests | union pageViews | union customEvents
| project timestamp
    , itemType
    , name
    , operation_Name
    , message
    , severityLevel
    , customDimensions
    , operation_Id
    , operation_ParentId
| where operation_Id == "0a7729e3e83c4e4d93cb4f51149f73b9" //placeholder operation_Id, replace
| order by timestamp asc

Output sampel untuk contoh kueri sebelumnya.

Data ekspor ke Power BI

Anda dapat mengekspor data Application Insights dan hasil kueri ke Power BI untuk analisis dan presentasi data.

  1. Masuk ke portal Azure dan buka sumber daya Application Insights yang Anda buat sebelumnya:

  2. Pilih Log di bawah Pemantauan di panel navigasi kiri:

  3. Dari jendela kueri analitik log, pilih menu Ekspor .

  4. Pilih opsi Ekspor ke Power BI (M kueri) untuk mengunduh Power BI file kueri:

    Ekspor kueri Power BI.

  5. Buka file yang diunduh di editor teks dan salin kueri ke clipboard.

  6. Buka Power BI.

  7. Pilih menu Dapatkan Data di pita Beranda, lalu pilih Kueri kosong:

    Kueri kosong Power BI.

  8. Di jendela kueri, pilih Editor Tingkat Lanjut. Tempelkan kueri ke jendela, pilih Selesai, lalu pilih Tutup &; Terapkan:

    Kueri lanjutan Power BI.

Anda juga dapat membuat diagram dan visualisasi di Power BI untuk menunjukkan tanggapan yang diterima di aplikasi Anda, serta membuat keputusan dan tindakan berdasarkan data.

Diagram dan visualisasi.

Konteks dan dimensi aktivitas Pelacakan default

Seperangkat dimensi default juga ditambahkan ke properti customDimensions pada setiap aktivitas Pelacakan. Dimensi ini dapat digunakan untuk mengidentifikasi aplikasi dan sesi aplikasi di mana aktivitas terjadi. Jika Anda mencatat data kustom tambahan menggunakan fungsi Trace, data tersebut juga akan muncul di dimensi kustom.

Nama Dimensi Menunjukkan
ms-appId ID Aplikasi dari aplikasi yang mengirimkan aktivitas.
ms-appname Nama aplikasi dari aplikasi yang mengirimkan aktivitas.
ms-appSessionId ID sesi aplikasi. Nilai ini mungkin tidak diisi adalah beberapa skenario. Bila tersedia, nilai ini akan menimpa dimensi Application Insights sessionID standar.
ms-tenantID Pengidentifikasi unik penyewa tempat aplikasi dipublikasikan.
ms-environmentId Nama lingkungan tempat aplikasi dipublikasikan.
userId Pengenal unik untuk pengguna yang terkait dengan sesi.
ms-duration Nilai yang diperhitungkan yang mengukur waktu yang diperlukan pengguna untuk menavigasi dari satu layar ke layar lainnya. Nilai ini mengesampingkan dimensi durasi PageView Application Insights standar.
sessionId ID sesi yang dapat digunakan untuk mengkorelasikan semua aktivitas yang terkait dengan satu sesi aplikasi. Nilai ini selalu ada dan direkomendasikan untuk memahami jumlah sesi unik. Nilai ini diambil dari ID sesi pemain dan ditampilkan saat melihat rincian sesi saat memutar aplikasi. ID Sesi terkadang mendapatkan nilai yang buatan Application Insights yang default, acak, dan unik. Nilai default ini tidak andal dan tidak berkorelasi dengan parameter spesifik aplikasi apa pun.
Durasi Nilai yang diperhitungkan yang mengukur waktu yang diperlukan pengguna untuk menavigasi dari satu layar ke layar lainnya. Nilai ini sama dengan durasi yang dilaporkan oleh dimensi ms-duration.
ms-isTest Menunjukkan apakah sesi terkait dengan pelari uji Test Studio.
ms-currentServerName Nama halaman yang dinavigasi pengguna (ada untuk peristiwa navigasi halaman).
ms-targetScreenName Nama halaman yang dinavigasi pengguna (ada untuk peristiwa navigasi halaman).

Skenario Tidak Didukung

Application Insights tidak mendukung skenario berikut.

  • Peristiwa pemain offline tidak direkam.
  • Aplikasi seluler (keduanya iOS dan Android) peristiwa tidak direkam saat aplikasi ditangguhkan.
  • GCC dan cloud non-publik tidak didukung.

Catatan

Apa bahasa dokumentasi yang Anda inginkan? Lakukan survei singkat. (perlu diketahui bahwa survei ini dalam bahasa Inggris)

Survei akan berlangsung kurang lebih selama tujuh menit. Tidak ada data pribadi yang dikumpulkan (pernyataan privasi).