Bagikan melalui


Data apa yang tersedia untuk aplikasi yang diarahkan model?

Data performa terkait dengan beban halaman dan permintaan jaringan keluar Antarmuka Terpadu (UCI) tersedia untuk aplikasi yang diarahkan model.

Jenis beban halaman apa yang tersedia?

Jenis Data performa dan diagnostik yang tersedia
Beban Dasbor (UCI) – Browser Ya
Beban Dasbor (UCI) – Disematkan Ya
Beban Dasbor (UCI) - MobileApplication Ya
Beban Dasbor (UCI) – MailApp Ya
Beban Dasbor (UCI) - MobileApplication Ya
Beban EditForm (UCI) – Browser Ya
Beban EditForm (UCI) – Disematkan Ya
Beban EditForm (UCI) – MailApp Ya
Beban EditForm (UCI) - MobileApplication Ya
Beban EntityList (UCI) – Browser Ya
Beban EntityList (UCI) - Disematkan Ya
Beban EntityList (UCI) – MailApp Ya
Beban EntityList (UCI) - MobileApplication Ya
Peluncuran Aplikasi - (UCI) – Browser Ya
Peluncuran Aplikasi - (UCI) - Disematkan Ya
Peluncuran Aplikasi - (UCI) – MailApp Ya
Peluncuran Aplikasi - (UCI) – MobileApplication Ya
QuickCreateForm Load (UCI) – Browser Ya
QuickCreateForm Load (UCI) – DIsematkan Ya
QuickCreateForm Load (UCI) – MailApp Ya
Beban QuickCreateForm (UCI) – MobileApplication Ya
SaveForm Saat ini Tidak Tersedia
Tindakan CommandButton Saat ini Tidak Tersedia

Di mana data beban halaman tersedia?

Data ini masuk ke tabel pageViews di Application Insights. Entri dicatat setiap kali pengguna memuat halaman di Antarmuka Terpadu. Data yang dicatat hanya mencakup beban "bersihkan". Beban yang durasinya tidak dapat diukur secara akurat navigasi cepat, beralih dari aplikasi, pesan peringatan tidak akan disertakan. Oleh karena itu, sebaiknya gunakan data ini untuk mendapatkan angka yang akurat terkait dengan analitik penggunaan.

Ada properti lainnya di customDimensions yang memberikan detail lebih lanjut untuk beban halaman Antarmuka Terpadu. Contohnya, kueri ini akan mengembalikan nilai untuk semua atribut dalam tabel pageViews.

pageViews
| take 1

Tabel pageViews Application Insights.

Atribut tabel pageViews mencakup:

  • appModule: Nama modul aplikasi.
  • entityName: Atribut ini ada bila relevan. Dasbor tersedia pada jenis halaman seperti EditForm, EntityList, dan Dasbor bila terikat ke entitas. Dalam skenario tertentu, formulir tidak terikat pada entitas dan nilai akan ditampilkan sebagai tidak tertentu.
  • formId: formId secara unik mengidentifikasi formulir dan dapat digunakan untuk mengkorelasikan masalah yang mempengaruhi formulir spesifik tersebut.
  • hostType: Browser/MobileApplication/Embedded
  • isBoot: Apakah ini beban pertama sesi?
  • loadType
    • 0: Kunjungan pertama ke jenis halaman tertentu (misalnya, kunjungan pertama ke formulir).
    • 1: Kunjungan pertama ke konfigurasi tertentu (misalnya, kunjungan pertama ke formulir akun).
    • 2: Kunjungan pertama ke rekaman tertentu (misalnya, kunjungan pertama ke rekaman akun A2).
    • 3: URL yang sama persis ini telah dikunjungi sebelumnya.
  • navigationOrigin: Jenis halaman yang dinavigasi pengguna.
  • networkConnectivityState: Apakah perangkat memiliki sambungan.
  • pageName: Jenis beban halaman.
  • serverConnectivityState: Apakah aplikasi terhubung ke server.
  • syncRequestTime: Waktu yang dihabiskan menunggu pada permintaan sinkronisasi.
  • coldLatency: Perkiraan pertama latensi jaringan, yang mencakup waktu handshake SSL.
  • warmLatency: Perkiraan latensi jaringan berikutnya, yang merupakan latensi perkiraan umum untuk setiap permintaan.
  • warmThroughput: Perkiraan throughput jaringan, dalam Kbps.

Untuk aktivitas Microsoft Dataverse, bidang ID atau operation_ParentId di Application Insights adalah x-ms-service-request-id. operationId dipetakan ke activityId di back end untuk tujuan pemecahan masalah dan permintaan dukungan.

Jenis data apa yang tersedia untuk permintaan jaringan keluar UCI?

Panggilan ini adalah panggilan ke dependensi lain yang dibuat oleh Antarmuka Terpadu untuk menampilkan halaman tertentu. Panggilan keluar ke Dataverse atau ke integrasi lain seperti Azure DevOps atau Office. Gunakan kueri berikut untuk mendapatkan data ini, yang tersedia dalam tabel dependensi Permintaan UCI:

dependencies
| where type == "UCI REQUEST"

Tabel dependensi Permintaan UCI memiliki bidang berikut:

  • Nama: URL yang diaktifkan oleh Antarmuka Terpadu.

  • Target: Saat ini sama dengan Nama.

  • Berhasil: Apakah panggilan berhasil atau gagal.

  • UserId: ID pengguna sistem Dataverse pengguna masuk.

  • Durasi: Durasi panggilan.

  • customDimensions: Berisi atribut berikut:

    PERMINTAAN UCI Application Insights.

    • appModule: AppModule yang membuat panggilan.
    • bodySize: Ukuran respons, dikodekan, dan didekodekan.
    • cached: Apakah permintaan masuk ke cache lokal atau harus ke server. Hal ini tidak berfungsi seperti yang diharapkan jika pengguna akhir berada di browser Internet Explorer.
    • download: Waktu yang diperlukan untuk mengunduh respons.
    • stall: Waktu saat permintaan sedang menunggu di antrean browser.
    • ttfb: Waktu yang dihabiskan untuk menunggu respons awal, atau yang dikenal sebagai "waktu untuk byte pertama." Waktu ini menangkap latensi perputaran ke server selain waktu yang dihabiskan untuk menunggu server memberikan respons.
    • coldLatency: Perkiraan pertama latensi jaringan, yang mencakup waktu handshake SSL.
    • warmLatency: Perkiraan latensi jaringan berikutnya, yang merupakan latensi perkiraan umum untuk setiap permintaan.
    • warmThroughput: Perkiraan throughput jaringan, dalam Kbps.

Jelajahi dan analisis skenario

Mengapa beberapa pengguna mengalami perlambatan pada Antarmuka Terpadu?

Satu skenario yang memungkinkan penemuan dan analisis berharga adalah ketika pengguna dari kawasan (misalnya, Asia) melaporkan bahwa formulir berjalan lambat. Pengguna yang berbasis di Asia ini mungkin mengakses lingkungan atau organisasi di Amerika Utara. Detailnya menampilkan waktu beban total selain durasi terkait jaringan. Mungkin bahwa hal ini merupakan penyebab lambatnya kinerja yang dilihat oleh pengguna.

Anda dapat menggunakan atribut warmLatency, warmThroughput, dan coldLatency untuk memahami perincian waktu yang dihabiskan pada pemuatan halaman dan permintaan Antarmuka Terpadu lainnya, seperti yang ditampilkan pada gambar berikut.

Kelambatan UCI Application Insights.

Pada permintaan di atas, Antarmuka Terpadu memerlukan waktu lebih lama dari permintaan API Dataverse (Web API) aktual. Pendetailan dalam kasus ini adalah durasi panggilan Dataverse API (56 mdtk) ditambah nilai CustomDimensions.warmLatency (89 ms), yang menambahkan hingga hampir durasi seluruh operasi (144 ms). Nilai warmLatency menunjukkan lambatnya klien tertentu dan mungkin merupakan masalah yang dapat Anda analisis pada tingkat pengguna menggunakan kueri berikut:

dependencies
| where ['type'] == "UCI REQUEST"
| summarize avg(toint(customDimensions.warmLatency)), avg(toint(customDimensions.coldLatency)), avg(toint(customDimensions.warmThroughput)) by user_Id

pageViews
| summarize avg(toint(customDimensions.warmLatency)), avg(toint(customDimensions.coldLatency)), avg(toint(customDimensions.warmThroughput)) by user_Id

Dapatkah saya menentukan cara pengguna mengakses sistem?

Atribut userAgent di bidang customDimensions pada tabel permintaan Application Insights memiliki data ini. Anda dapat menggunakan kueri berikut untuk mendapatkan ikhtisar sumber daya yang berbeda tempat pengguna mengakses sistem:

pageViews
| summarize count() by tostring(customDimensions.userAgent), user_Id

dependencies
| where ['type'] == "UCI REQUEST"
Kapan nilai customDimensions.userAgent dimulai dengan Dari mana pengguna mengakses sistem?
Mozilla Jenis, Versi browser
azure-logic-apps Azure Logic Apps
PowerApps Power Apps
Microsoft Office Excel Office Excel
Portal Portal
DynamicsDataIntegration Integrasi DynamicsData
XrmToolBox.exe XrmToolBox
PluginRegistration Pendaftaran Plugin
LogicAppsDesigner Perancang Logic Apps
Apache-HttpClient Klien HTTP Apache
Microsoft Flow Power Automate
UnifiedServiceDesk Unified Service Desk
PostmanRuntime Postman
OfficeGroupsConnector Office Groups connector
Microsoft.Data.Mashup Power Query
Apache-Olingo Apache Olingo
Dalvik Android
Jakarta Commons-Http Jakarta
Informatica Informatica
axios Axios
node-fetch NodeJS
LinkedInBot LinkedInBot

Bagaimana cara mendapatkan jumlah pengguna yang mengakses dari browser, perangkat bergerak, atau aplikasi yang disematkan?

pageViews
| summarize count() by tostring(customDimensions.hostType)

Gambar berikut menampilkan rangkaian contoh hasil dari kueri ini.

Rangkaian hasil sampel Application Insights.

Bagaimana cara mempersempit ke pengguna tertentu?

pageViews
| where user_Id == "[userid]"
| summarize count() by tostring(customDimensions.hostType)

Bagaimana cara menggunakan Application Insights dengan Monitor?

Azure Monitor membantu memecahkan masalah real-time pada sesi dari sisi Antarmuka Terpadu. Permintaan transaksi end-to-end mungkin akan tersedia di Application Insights. Untuk melihat log tindakan tertentu, catat ID aktivitas dari baris pada halaman detail aktivitas di Monitor. Anda dapat menemukan log dengan menggunakan kueri berikut:

union *
| where operation_Id contains "[ActivityIdHere]"

Monitor adalah alat debugging real-time; namun, data mungkin tidak tersedia di dalamnya selama beberapa jam.

Mengapa pengguna mengalami masalah dengan formulir tertentu?

Pengguna dapat berbagi ID sesi mereka dari bagian Tentang di Antarmuka Terpadu untuk organisasi tertentu.

Pengaturan > Tentang.

Pengaturan > Tentang ID Sesi.

Selanjutnya Anda dapat menggunakan ID ini untuk menemukan masalah dengan melihat semua aktivitas di sesi tersebut. Gunakan kueri berikut:

union *
| where session_Id == '[sessionIdHere]'

Formulir yang sedang digunakan di lokasi yang berbeda, dan seperti apa performa beban formulir di lokasi ini?

pageViews
| summarize avg(duration) by name, client_City, client_CountryOrRegion

Apakah API eksternal memanggil kegagalan, dan dapatkah saya menelusuri paling detail ke dalam tumpukan kesalahan untuk membantu debugging?

Tampilan browser panel Kegagalan berisi permintaan keluar Antarmuka Terpadu. Permintaan yang masuk ke Dataverse atau organisasi berisi URL organisasi. Mungkin ada permintaan lain yang masuk ke URL lain (misalnya, pada gambar berikut, organisasi memiliki pemanggilan penyesuaian ke dc.services.visualstudio.com). Anda dapat melihat transaksi end-to-end untuk memeriksa lebih lanjut kegagalan panggilan keluar eksternal ini.

Telusuri panel Kegagalan.

Dapatkah saya menetapkan pemberitahuan pada ambang batas performa untuk tindakan formulir tertentu? Bila pemberitahuan diterima, apakah pembuat dapat mendiagnosis dan memecahkan masalah?

Ya. Anda dapat mengatur peringatan di Application Insights untuk memantau kesehatan aplikasi Anda.