Analisis log yang dijana sistem menggunakan Application Insights

Anda boleh menyambungkan aplikasi kanvas anda kepada Application Insights, ciri Azure Monitor. Application Insights Termasuk alat analitis yang berkuasa untuk membantu anda mendiagnosis isu dan memahami perkara yang sebenarnya dilakukan oleh pengguna dengan apl anda. Anda boleh mengumpul maklumat untuk membantu anda memacu keputusan perniagaan yang lebih baik dan meningkatkan kualiti apl anda.

Prasyarat

Nota

Untuk melihat maklumat telemetri, pentadbir penyewa anda mesti mendayakan cerapan aplikasi Kanvas. Log masuk sebagai pentadbir di Power Platform Pusat Pentadbiran. Pergi ke Tetapan>Tetapan>penyewa Cerapan aplikasi kanvas. Dalam anak tetingkap Wawasan aplikasi kanvas, tetapkan togol kepada Hidup dan simpan perubahan anda. Untuk maklumat lanjut, lihat Tetapan penyewa.

Cipta sumber Application Insights

Sebelum anda boleh menghantar log yang dijana sistem daripada aplikasi, anda perlu mencipta Application Insights sumber untuk menyimpan peristiwa.

Cipta sumber berasaskan ruang kerja untuk Application Insights dalam portal Azure.

Sambungkan aplikasi anda ke Application Insights

Nota

  • Apabila menentukan rentetan sambungan, sedar bahawa data boleh dihantar merentasi penyewa. Peristiwa jejak dihantar ke sumber App Insights yang sepadan dengan rentetan sambungan yang anda tetapkan untuk aplikasi anda, walaupun jika tika App Insights sasaran berada dalam penyewa yang berbeza daripada aplikasi.
  • Berhati-hati apabila mengimport fail .msapp sedia ada kerana rentetan sambungan untuk App Insights mungkin ada. Buka apl secara manual selepas import untuk mengesahkan bahawa rentetan sambungan App Insights yang betul sedang digunakan.
  1. Daftar masuk ke Power Apps.

  2. Buka apl untuk diedit.

  3. Pilih objek Aplikasi dalam pandangan pokok navigasi kiri dan tampal rentetan Sambungan daripada sumber anda Application Insights :

    Tambah rentetan sambungan.

  4. Simpan dan Terbitkan apl anda.

  5. Mainkan apl yang diterbitkan dan layari skrin yang berbeza.

Semasa anda menyemak imbas skrin aplikasi, acara dilog masuk secara Application Insights automatik, termasuk butiran penggunaan seperti:

  • Dari mana apl diakses
  • Peranti mana yang digunakan
  • Jenis pelayar yang digunakan

Penting

Anda mesti memainkan aplikasi yang diterbitkan untuk menghantar peristiwa kepada Application Insights. Peristiwa tidak dihantar kepada Application Insights apabila anda pratonton aplikasi dalam Power Apps Studio.

Lihat peristiwa dalam Application Insights

  1. Log masuk ke portal Azure dan buka sumber yang Application Insights anda cipta sebelum ini.

  2. Tatal ke bawah dalam anak tetingkap navigasi kiri dan pilih Pengguna di bawah bahagian Penggunaan.

    Nota

    Paparan Pengguna menunjukkan butiran penggunaan apl, seperti:

    • Bilangan pengguna yang melihat apl
    • Bilangan sesi pengguna
    • Bilangan peristiwa yang dilog
    • Sistem pengendalian pengguna dan butiran versi pelayar
    • Wilayah dan lokasi pengguna

    Ketahui lebih lanjut tentang analisis pengguna, sesi dan acara dalam Application Insights.

  3. Pilih salah satu sesi pengguna untuk meneliti butiran khusus. Anda boleh melihat maklumat seperti panjang sesi dan skrin yang dilawati:

    Butiran penggunaan untuk pengguna.

  4. Pilih pandangan Peristiwa dalam anak tetingkap navigasi kiri di bawah bahagian Penggunaan . Anda boleh melihat ringkasan semua skrin yang dilihat merentasi semua sesi aplikasi:

    Butiran acara untuk aplikasi.

Tip

Lebih banyak Application Insights ciri tersedia, seperti:

Cipta peristiwa jejak tersuai

Anda boleh menulis jejak tersuai secara terus ke Application Insights dan mula menganalisis maklumat khusus kepada senario anda. Fungsi Jejak membolehkan anda mengumpul:

  • Maklumat penggunaan terperinci untuk kawalan pada skrin
  • Pengguna tertentu yang mengakses apl anda
  • Ralat apa yang berlaku

Pengesanan juga boleh membantu mendiagnosis isu kerana anda boleh menghantar jejak maklumat apabila pengguna anda menyemak imbas melalui aplikasi anda dan melakukan tindakan yang berbeza. Mesej jejak yang dihantar untuk Application Insights mempunyai salah satu daripada tiga keterukan:

  • Maklumat
  • Amaran
  • Ralat

Bergantung pada senario anda, anda boleh memilih untuk menghantar mesej jejak dengan keterukan yang sesuai. Anda boleh menanyakan data dan mengambil tindakan tertentu berdasarkan keterukan.

Nota

Jika anda mengelog sebarang data peribadi, sedar tentang kewajipan anda berkenaan dengan pelbagai undang-undang dan peraturan privasi. Rujuk Pusat Amanah Microsoft dan Portal Amanah Perkhidmatan untuk maklumat lanjut.

Sekarang cipta komponen baharu dalam apl anda untuk mengumpul maklum balas pada setiap skrin dan tulis acara kepada Application Insights.

  1. Daftar masuk ke Power Apps.

  2. Pilih Apl dalam anak tetingkap navigasi kiri. Daripada senarai aplikasi, pilih aplikasi Kudos dan kemudian pilih Edit.

    Nota

    Anda juga boleh mencipta apl baharu atau mengedit apl sedia ada.

  3. Pilih pilihan Komponen pada paparan Pokok:

    Komponen.

  4. Pilih Komponen baharu dan kemudian ubah saiz lebar kepada 200 dan ketinggian kepada 75:

    Ketinggian dan lebar.

  5. Pilih Masukkan daripada menu dan kemudian pilih Ikon untuk menambah Emoji - Kerutan dan Emoji - Senyum:

    Tambah ikon.

  6. Pilih Sifat tersuai baharu untuk mencipta sifat tersuai:

    Cipta sifat tersuai.

  7. Masukkan Nama sifat dan Nama paparan seperti FeedbackSceen.

  8. Masukkan perihalan hartanah.

  9. Pilih Jenis sifat sebagai Input dan Jenis data sebagai Skrin:

    Harta tersuai.

    Nota

    Masukan sifat membolehkan anda menangkap nama skrin dan komponennya supaya anda boleh mengelog maklumat ini kepada Application Insights.

  10. Pilih komponen pada Pandangan Perika, pilih Lagi tindakan (...), dan kemudian pilih Namakan semula untuk menamakan semula komponen dengan nama yang bermakna seperti FeedbackComponent.

    Namakan semula komponen dan ikon.

  11. Pilih ikon, pilih Lebih banyak tindakan (...), dan kemudian pilih Namakan semula untuk menamakan semula ikon dengan nama yang bermakna, seperti FrownIcon dan SmileIcon.

  12. Pilih FrownIcon, pilih sifat OnSelect dan kemudian masukkan ungkapan berikut dalam bar formula:

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

    Formula ikon mengerutkan kening.

    Nota

    Ungkapan formula menghantar Nama Pengguna, E-mel Pengguna, Skrin dan Maklum Balas (dengan nilai-1 ) kepada . Application Insights

  13. Pilih SmileIcon, pilih sifat OnSelect dan kemudian masukkan ungkapan berikut dalam bar formula:

    Trace(
       "App Feedback",
       TraceSeverity.Information,
           {
             UserName: User().FullName,
             UserEmail: User().Email,
             Screen: FeedbackComponent.FeedbackScreen.Name,
             FeebackValue: "1"
           }
         );
    Notify("Thanks for your feedback!");
    
  14. Tambah komponen pada salah satu skrin dalam aplikasi anda:

    Tambah komponen maklum balas.

  15. Pilih Simpan dan kemudian pilih Terbitkan untuk menyimpan dan menerbitkan aplikasi anda.

  16. Mainkan aplikasi yang diterbitkan dan hantar senyuman dan maklum balas berkerut dahi daripada skrin anda.

    Penting

    Anda mesti memainkan aplikasi yang diterbitkan untuk menghantar peristiwa kepada Application Insights. Peristiwa tidak dihantar kepada Application Insights apabila anda pratonton aplikasi dalam Power Apps Studio.

    Mainkan apl yang diterbitkan.

Analisis data dalam Application Insights

Anda kini boleh mula menganalisis data yang anda hantar menggunakan fungsi Jejak daripada apl Application Insights anda.

  1. Log masuk ke portal Azure dan buka sumber yang Application Insights anda cipta sebelum ini:

    Pilih Application Insights.

  2. Pilih Log di bawah Pemantauan dalam anak tetingkap navigasi kiri:

    Pilih Log.

  3. Masukkan pertanyaan berikut dan pilih Jalankan untuk melihat maklum balas yang diterima daripada apl anda:

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

    Lihat maklum balas apl.

  4. Pilih baris dalam hasil carian dan kembangkan medan customDimensions .

    Nilai untuk Skrin, Nama Pengguna , E-mel Pengguna, danNilai Maklum Balas untukacara OnSelect ikon senyuman atau kerutan dalam komponen anda telah direkodkan. Nilai juga direkodkan untuk setiap acara yang dihantar kepada Application Insights, seperti appId, appName dan appSessionId.

    Kembangkan dimensi tersuai.

  5. Dengan pertanyaan contoh berikut, anda boleh melanjutkan sifat dimensi tersuai JSON dan projek lajur dalam pandangan keputusan.

    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
    

    Lanjutkan pertanyaan customDimensions.

    Tip

    Pertanyaan log sangat berkuasa. Anda boleh menggunakannya untuk menyertai berbilang jadual, mengagregatkan jumlah data yang besar dan melakukan operasi yang kompleks. Ketahui lebih lanjut tentang pertanyaan log.

Pantau ralat yang tidak dikendalikan (percubaan)

[Bahagian ini mengandungi dokumentasi prapelancaran dan tertakluk pada perubahan.]

Penting

  • Ini adalah ciri percubaan.
  • Ciri percubaan bukan untuk kegunaan pengeluaran dan kefungsian mungkin terbatas. Ciri ini tersedia sebelum keluaran rasmi agar pelanggan boleh mendapat akses awal dan memberikan maklum balas.

Anda tidak boleh sentiasa menjangkakan dan merancang untuk semua ralat yang mungkin berlaku semasa apl anda sedang berjalan. Ralat formula yang tidak dikendalikan Power Fx dilaporkan kepada pengguna sebagai mesej sepanduk. Mereka juga boleh dilaporkan untuk Application Insights membantu anda memahami kekerapan dan keterukan mereka tanpa bergantung pada pengguna apl anda untuk melaporkan isu. Anda juga boleh menyediakan makluman masa nyata apabila ralat masa jalan berlaku untuk mengambil pendekatan yang lebih proaktif.

Dayakan penghantaran ralat kepada Application Insights

Anda perlu mendayakan tetapan yang membolehkan Power Apps untuk menghantar ralat masa jalan yang tidak dikendalikan ke Azure Application Insights.

Amaran

Mendayakan tetapan ini mungkin mengenakan kos tambahan yang berkaitan dengan storan log Application Insights.

Untuk mendayakan hantaran ralat, pergi ke Tetapan Ciri Akan > Datang Ralat Pas Percubaan > ke Azure > sambil memastikan apl kanvas anda terbuka Application Insights untuk diedit. Simpan dan terbitkan apl anda.

Dayakan tetapan Pas ralat ke Azure Application Insights .

Peristiwa ralat dalam Application Insights

Ralat yang tidak dikendalikan Power Fx yang dialami oleh pengguna pada masa jalan apl dilaporkan kepada jadual jejak . Ralat yang tidak dikendalikan boleh dikenal pasti dan dibezakan daripada peristiwa ralat lain dengan mesej peristiwa "Ralat yang tidak dikendalikan." Dimensi "severityLevel" bagi peristiwa ini ialah 3 (TraceSeverity.Error).

Mesej ralat terperinci disediakan dalam dimensi "ralat" sifat customDimension . Dalam situasi di mana berbilang ralat berlaku semasa operasi yang sama, ralat disatukan dalam dimensi "ralat" bagi satu peristiwa jejak. Mesej ralat adalah sama seperti yang dilaporkan dalam Pantau semasa sesi nyahpepijat langsung.

Contoh pertanyaan berikut mengenal pasti ralat yang tidak dikendalikan dan mengembangkan semua mesej ralat yang disertakan dalam peristiwa jejak:

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

Contoh output untuk contoh pertanyaan.

Penjejakan korelasi (percubaan)

[Bahagian ini mengandungi dokumentasi prapelancaran dan tertakluk pada perubahan.]

Penting

  • Ini adalah ciri percubaan.
  • Ciri percubaan bukan untuk kegunaan pengeluaran dan kefungsian mungkin terbatas. Ciri ini tersedia sebelum keluaran rasmi agar pelanggan boleh mendapat akses awal dan memberikan maklum balas.

Sambungan ke data dan perkhidmatan luaran ialah asas kepada kebanyakan aplikasi. Pengesanan korelasi menjana dan menyebarkan maklumat konteks untuk menyertai log yang dijana sistem merentas apl kanvas dan sambungannya, tertakluk kepada had tertentu. Sebagai contoh, aplikasi anda mungkin memanggil penyambung tersuai yang seterusnya memanggil Fungsi Azure atau API REST lain. Pengesanan korelasi membolehkan anda mengaitkan tindakan yang diambil dalam apl dengan panggilan API asas merentas peringkat. Ini boleh menjadi berguna dalam penyelesaian masalah.

Pengesanan korelasi apl kanvas ialah pelaksanaan pengesanan konteks dan mengikut spesifikasi W3C.

Dayakan penjejakan korelasi

Amaran

Mendayakan tetapan ini mungkin mengenakan kos tambahan yang berkaitan dengan storan log Application Insights.

Untuk mendayakan ciri pengesanan korelasi, pergi ke Tetapan Ciri Akan > Datang Percubaan Dayakan > pengesanan > korelasi Azure Application Insights sambil memastikan aplikasi kanvas anda terbuka untuk diedit. Simpan dan terbitkan apl anda.

Dayakan pengesanan korelasi Azure Application Insights .

Batasan

Menggunakan penjejakan korelasi

Apabila didayakan, pengesanan korelasi menambah peristiwa log yang dijana sistem baharu dalam jadual kebergantungan tika apl Application Insights kanvas. Peristiwa ini direkodkan pada masa respons daripada panggilan rangkaian diterima. Peristiwa kebersandaran merekod butiran panggilan rangkaian, termasuk pengepala permintaan dan respons, kod status respons dan tempoh panggilan.

Contoh peristiwa yang dilog dalam jadual kebergantungan.

Jika perkhidmatan yang disambungkan juga disambungkan Application Insights, acara log yang dijana sistem tambahan yang menangkap permintaan dijana dalam jadual permintaan Application Insights tika perkhidmatan. Sesetengah perkhidmatan Azure, seperti Azure Functions, boleh disambungkan tanpa sebarang pengekodan daripada portal Azure. Kedua-dua apl kanvas atau berbilang apl dan perkhidmatan yang disambungkan boleh disambungkan ke contoh yang sama Application Insights .

Contoh peristiwa yang dilog dalam jadual permintaan.

Panggilan rangkaian untuk penyambung yang disokong boleh digabungkan dengan log lain yang dijana sistem pada dimensi "operation_Id". Contoh pertanyaan berikut menunjukkan panggilan rangkaian dibuat bersama peristiwa jejak yang dipancarkan semasa 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

Contoh output untuk pertanyaan contoh terdahulu.

Eksport data kepada Power BI

Anda boleh mengeksport data Application Insights anda dan keputusan pertanyaan kepada Power BI untuk analisis dan pembentangan data.

  1. Log masuk ke portal Azure dan buka sumber yang Application Insights anda cipta sebelum ini:

  2. Pilih Log di bawah Pemantauan dalam anak tetingkap navigasi kiri:

  3. Daripada tetingkap pertanyaan analitis log, pilih menu Eksport .

  4. Pilih pilihan Eksport ke ( Power BI pertanyaan M) untuk memuat turun fail Power BI pertanyaan:

    Pertanyaan eksport Power BI .

  5. Buka fail yang dimuat turun dalam editor teks dan salin pertanyaan pada papan klip.

  6. Buka Power BI.

  7. Pilih menu Dapatkan Data dalam reben Laman Utama dan kemudian pilih Pertanyaan kosong:

    Power BI pertanyaan kosong.

  8. Dalam tetingkap pertanyaan, pilih Editor Lanjutan. Tampal pertanyaan ke dalam tetingkap, pilih Selesai dan kemudian pilih Tutup & Guna:

    Power BI pertanyaan awal.

Anda juga boleh mencipta carta dan visualizations dalam Power BI untuk mewakili maklum balas yang diterima dalam aplikasi anda serta membuat keputusan dan tindakan berdasarkan data.

Carta dan visualisasi.

Konteks dan dimensi peristiwa Jejak lalai

Satu set dimensi lalai juga ditambah pada sifat customDimensions pada setiap peristiwa Jejak. Dimensi ini boleh digunakan untuk mengenal pasti permohonan dan sesi permohonan peristiwa-peristiwa yang berlaku. Jika anda merekodkan data tersuai tambahan menggunakan fungsi Jejak, data tersebut juga akan muncul dalam dimensi tersuai.

Nama Dimensi Mewakili
ms-appId ID Aplikasi untuk aplikasi yang menghantar peristiwa tersebut.
ms-appname Nama Aplikasi untuk aplikasi yang menghantar peristiwa tersebut.
ms-appSessionId ID sesi aplikasi. Nilai ini mungkin tidak diisi adalah beberapa senario. Apabila tersedia, nilai ini akan mengatasi dimensi Application Insights sessionID standard.
ms-tenantID Pengecam unik penyewa di mana aplikasi diterbitkan.
ms-environmentId Nama persekitaran di mana aplikasi diterbitkan.
userId Pengecam unik untuk pengguna yang dikaitkan dengan sesi.
ms-duration Nilai imput yang mengukur masa yang diambil untuk pengguna menavigasi dari satu skrin ke skrin yang lain. Nilai ini mengatasi dimensi tempoh Application Insights PageView standard.
sessionId ID sesi yang boleh digunakan untuk menghubungkaitkan semua peristiwa berkaitan dengan sesi aplikasi tunggal. Nilai ini sentiasa ada dan disyorkan untuk memahami kiraan sesi yang unik. Nilai ini diambil daripada ID sesi pemain dan ditunjukkan ketika melihat butiran sesi semasa memainkan aplikasi. ID sesi mungkin kadang-kadang mendapat nilai yang dijana Application Insights yang lalai, rawak dan unik. Nilai lalai ini tidak boleh dipercayai dan tidak berhubung kait dengan mana-mana parameter khusus aplikasi.
Tempoh Nilai imput yang mengukur masa yang diambil untuk pengguna menavigasi dari satu skrin ke skrin yang lain. Nilai ini adalah sama dengan tempoh yang dilaporkan oleh dimensi ms-duration.
ms-isTest Menunjukkan sama ada sesi dikaitkan dengan pelari ujian Test Studio.
ms-currentScreenName Nama halaman yang digunakan oleh pengguna (hadir untuk acara navigasi halaman).
ms-targetScreenName Nama halaman yang dinavigasi oleh pengguna (hadir untuk acara navigasi halaman).

Senario tidak disokong

Application Insights tidak menyokong senario berikut.

  • Acara pemain luar talian tidak ditangkap.
  • Peristiwa apl mudah alih (kedua-duanya iOS dan Android) tidak ditangkap apabila apl digantung.
  • GCC dan awan bukan awam tidak disokong.