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
- Anda mesti mempunyai akses kepada portal Azure.
- Anda mesti mempunyai keizinan untuk mencipta sumber Azure.
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.
Daftar masuk ke Power Apps.
Buka apl untuk diedit.
Pilih objek Aplikasi dalam pandangan pokok navigasi kiri dan tampal rentetan Sambungan daripada sumber anda Application Insights :
Simpan dan Terbitkan apl anda.
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
Log masuk ke portal Azure dan buka sumber yang Application Insights anda cipta sebelum ini.
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.
Pilih salah satu sesi pengguna untuk meneliti butiran khusus. Anda boleh melihat maklumat seperti panjang sesi dan skrin yang dilawati:
Pilih pandangan Peristiwa dalam anak tetingkap navigasi kiri di bawah bahagian Penggunaan . Anda boleh melihat ringkasan semua skrin yang dilihat merentasi semua sesi 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.
Daftar masuk ke Power Apps.
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.
Pilih pilihan Komponen pada paparan Pokok:
Pilih Komponen baharu dan kemudian ubah saiz lebar kepada 200 dan ketinggian kepada 75:
Pilih Masukkan daripada menu dan kemudian pilih Ikon untuk menambah Emoji - Kerutan dan Emoji - Senyum:
Pilih Sifat tersuai baharu untuk mencipta sifat tersuai:
Masukkan Nama sifat dan Nama paparan seperti FeedbackSceen.
Masukkan perihalan hartanah.
Pilih Jenis sifat sebagai Input dan Jenis data sebagai Skrin:
Nota
Masukan sifat membolehkan anda menangkap nama skrin dan komponennya supaya anda boleh mengelog maklumat ini kepada Application Insights.
Pilih komponen pada Pandangan Perika, pilih Lagi tindakan (...), dan kemudian pilih Namakan semula untuk menamakan semula komponen dengan nama yang bermakna seperti FeedbackComponent.
Pilih ikon, pilih Lebih banyak tindakan (...), dan kemudian pilih Namakan semula untuk menamakan semula ikon dengan nama yang bermakna, seperti FrownIcon dan SmileIcon.
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!");
Nota
Ungkapan formula menghantar Nama Pengguna, E-mel Pengguna, Skrin dan Maklum Balas (dengan nilai-1 ) kepada . Application Insights
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!");
Tambah komponen pada salah satu skrin dalam aplikasi anda:
Pilih Simpan dan kemudian pilih Terbitkan untuk menyimpan dan menerbitkan aplikasi anda.
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.
Analisis data dalam Application Insights
Anda kini boleh mula menganalisis data yang anda hantar menggunakan fungsi Jejak daripada apl Application Insights anda.
Log masuk ke portal Azure dan buka sumber yang Application Insights anda cipta sebelum ini:
Pilih Log di bawah Pemantauan dalam anak tetingkap navigasi kiri:
Masukkan pertanyaan berikut dan pilih Jalankan untuk melihat maklum balas yang diterima daripada apl anda:
traces | where message == "App Feedback" | order by timestamp
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.
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
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.
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
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.
Batasan
- Pengesanan korelasi hanya tersedia untuk penyambung tersuai. Jenis penyambung lain tidak disokong.
- Permintaan HTTP ditangkap hanya Application Insights jika perkhidmatan yang disambungkan juga disambungkan kepada Application Insights.
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.
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 .
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
Eksport data kepada Power BI
Anda boleh mengeksport data Application Insights anda dan keputusan pertanyaan kepada Power BI untuk analisis dan pembentangan data.
Log masuk ke portal Azure dan buka sumber yang Application Insights anda cipta sebelum ini:
Pilih Log di bawah Pemantauan dalam anak tetingkap navigasi kiri:
Daripada tetingkap pertanyaan analitis log, pilih menu Eksport .
Pilih pilihan Eksport ke ( Power BI pertanyaan M) untuk memuat turun fail Power BI pertanyaan:
Buka fail yang dimuat turun dalam editor teks dan salin pertanyaan pada papan klip.
Buka Power BI.
Pilih menu Dapatkan Data dalam reben Laman Utama dan kemudian pilih Pertanyaan kosong:
Dalam tetingkap pertanyaan, pilih Editor Lanjutan. Tampal pertanyaan ke dalam tetingkap, pilih Selesai dan kemudian pilih Tutup & Guna:
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.
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.