Model temelli uygulamalar için hangi veriler kullanılabilir?

Sayfa yükleme ve Birleşik Arabirim (UCI) giden ağ istekleriyle ilgili performans verileri model temelli uygulamalar için kullanılabilir.

Ne tür sayfa yükleri kullanılabilir?

Tür Performans ve tanılama verileri kullanılabilir
Pano Yükü (UCI) – Tarayıcı Evet
Pano yükü (UCI) – katıştırılmış Evet
Pano yükü (UCI)-MobileApplication Evet
Pano yükü (UCI) – MailApp Evet
Pano yükü (UCI)-MobileApplication Evet
EditForm yükü (UCI) – tarayıcı Evet
EditForm yükü (UCI) – gömülü Evet
EditForm yükü (UCI) – MailApp Evet
EditForm yükü (UCI)-MobileApplication Evet
EntityList Yükü (UCI) – Tarayıcı Evet
EntityList Yükü (UCI) - Katıştırılmış Evet
EntityList Yükü (UCI) – MailApp Evet
EntityList Yükü (UCI) - MobileApplication Evet
Başlatma Uygulaması - (UCI) – Tarayıcı Evet
Başlatma Uygulaması - (UCI) - Katıştırılmış Evet
Başlatma Uygulaması - (UCI) - MailApp Evet
Başlatma Uygulaması - (UCI) - MobileApplication Evet
QuickCreateForm yükü (UCI) – tarayıcı Evet
QuickCreateForm yükü (UCI) – Katıştırılmış Evet
QuickCreateForm yükü (UCI) – MailApp Evet
QuickCreateForm Yükü (UCI) – MobileApplication Evet
SaveForm Şu anda kullanılamıyor
CommandButton Eylemleri Şu anda kullanılamıyor

Sayfa yükleme verileri nerede kullanılabilir?

Bu veriler Application Insights'taki pageViews tablosuna gider. Bir kullanıcı Birleşik Arabirim'de her sayfa yüklediğinde giriş günlüğe kaydedilir. Günlüğe kaydedilen veriler yalnızca "temiz" yükleri içerir. Süresi doğru olarak ölçülemeyen yükler (hızlı gezinme, uygulamadan uzakta geçiş yapma, bir uyarı iletisi) dahil değildir. Bu nedenle, kullanım analizleri ile ilgili doğru rakamlar için bu verileri kullanmanızı öneririz.

Birleşik Arabirim sayfa yüklemeleri için daha fazla ayrıntı sağlayan customDimensions içinde başka özellikler vardır. Örneğin, bu sorgu pageViews tablosundaki tüm özniteliklerin değerlerini döndürür.

pageViews
| take 1

Application Insights pageViews tablosu.

pageViews tablosu öznitelikleri aşağıdakileri içerir:

  • appModule: Uygulama modülü adı.
  • entityName: Bu öznitelik ilgili olduğunda vardır. Bir varlığa bağlı olduklarında EditForm, EntityList ve Dashboards gibi sayfa türlerinde kullanılabilir. Bazı senaryolarda, form bir varlığa bağlı değildir ve değer tanımsız olarak görünür.
  • formId: formId, bir formu benzersiz olarak tanımlar ve bu belirli formu etkileyen sorunları ilişkilendirmek için kullanılabilir.
  • hostType: Tarayıcı/MobileApplication/Katıştırılmış
  • isBoot: Bu, bir oturumun ilk yüklemesi mi?
  • loadType
    • 0: Önce belirli bir sayfa türüne gidin (örneğin, bir forma yapılan ilk ziyaret).
    • 1: Önce belirli bir yapılandırmaya gidin (örneğin, bir hesap formuna yapılan ilk ziyaret).
    • 2: Önce belirli bir kayda gidin (örneğin, hesap kaydı A2'ye yapılan ilk ziyaret).
    • 3: Bu tam URL daha önce ziyaret edildi.
  • navigationOrigin: Kullanıcının geldiği sayfa türü.
  • networkConnectivityState : Cihazın bağlantısı olup olmadığı.
  • pageName : Sayfa yükünün türü.
  • serverConnectivityState : Uygulamanın sunucuya bağlı olup olmadığı.
  • syncRequestTime : Zaman uyumlu isteklerde beklerken harcanan süre.
  • coldLatency : SSL el sıkışma süresini içeren, ağ gecikmesine ilişkin ilk tahmin.
  • warmLatency : Her istek için genellikle beklenen gecikme olan ağ gecikmesine ilişkin sonraki tahmin.
  • warmThroughput: Kbit/sn. olarak ağın tahmini aktarım hızı.

Microsoft Dataverse olayları için Application Insights'taki ID alanı veya operation_ParentId, x-ms-service-request-id'dir. operationId, sorun giderme ve destek talepleri için arka uçta activityId ile eşlenir.

UCI giden ağ istekleri için ne tür veriler var?

Bunlar, belirli bir sayfayı işlemek için Birleşik Arabirim tarafından yapılan diğer bağımlılıklara yönelik çağrılardır. Bunlar Dataverse'e veya Azure DevOps ya da Office gibi diğer entegrasyonlara giden çağrılar olabilir. UCI istek bağımlılığı tablosunda bulunan bu verileri almak için aşağıdaki sorguyu kullanın:

dependencies
| where type == "UCI REQUEST"

UCI istek bağımlılığı tablosu aşağıdaki alanlara sahiptir:

  • Ad : Birleşik Arabirim tarafından çağrılan URL.

  • Hedef : Şu anda Ad ile aynı.

  • Başarılı : Aramanın başarılı mı yoksa başarısız mı olduğu.

  • Kullanıcı Kimliği: Oturum açmış kullanıcının Dataverse sistemi kullanıcı kimliği.

  • Süre: Çağrının süresi.

  • customDimensions : Aşağıdaki öznitelikleri içerir:

    Application Insights UCI İSTEĞİ.

    • appModule: Çağrıyı yapan appModule.
    • bodySize: Kodlanmış ve kodu çözülmüş yanıtın boyutu.
    • cached: İsteği yerel ön belleğe mi sunucuya mı gitmesi gerektiği. Son kullanıcı Internet Explorer tarayıcısını kullanıyorsa bu beklendiği gibi çalışmaz.
    • download: Yanıtı indirmek için geçen süre.
    • stall : İsteğin tarayıcı kuyruğunda beklediği süre.
    • ttfb: İlk yanıtı beklerken geçen ve "ilk bayta kadar geçen süre" olarak da bilinen süre. Bu süre, sunucunun yanıtı teslim etmesi için beklerken geçen süreye ek olarak sunucuya gidiş-dönüş gecikmeyi yakalar.
    • coldLatency : SSL el sıkışma süresini içeren, ağ gecikmesine ilişkin ilk tahmin.
    • warmLatency : Her istek için genellikle beklenen gecikme olan ağ gecikmesine ilişkin sonraki tahmin.
    • warmThroughput: Kbit/sn. olarak ağın tahmini aktarım hızı.

Senaryoları keşfetme ve çözümleme

Bazı kullanıcılarım neden Birleşik Arabirim üzerinde yavaşlama yaşıyor?

Bulma ve çözümlemenin değerli olabileceği bir senaryo, bir bölgeden (örneğin, Asya) bir kullanıcının bir formun yavaş yavaş performans sergilediğini bildirmesidir. Asya 'da bulunan bu kullanıcı Kuzey Amerika'daki bir ortama veya kuruluşa erişiyor olabilir. Ayrıntılar ağ ile ilgili süreye ek olarak toplam yükleme süresini de gösterir. Bunun kullanıcı tarafından algılanan yavaş performansın bir nedeni olması iyi olabilir.

Aşağıdaki görüntüde gösterildiği gibi sayfa yüklemelerinde ve diğer Birleşik Arabirim isteklerinde harcanan sürenin dökümünü anlamak için warmLatency, warmThroughput ve coldLatency özniteliklerini kullanabilirsiniz.

Application Insights UCI yavaşlığı.

Yukarıdaki istekte, Birleşik Arabirim isteği gerçek Dataverse API'sı (Web API'sı) isteğinden daha uzun sürer. Bu servis talebinin dökümü, Dataverse API çağrısına (56 msn.) ek olarak CustomDimensions.warmLatency'nin (89 msn.), yani yaklaşık olarak tüm işlem süresinin toplamına (144 sn.) eşit süredir. warmLatencydeğeri belirli bir istemci için yavaşlığın göstergesidir ve aşağıdaki sorguyu kullanarak kullanıcı düzeyinde analiz edebildiğiniz bir sorun olabilir:

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

Kullanıcının sisteme nasıl eriştiğini belirleyebilir miyim?

Application Insights istekler tablosundaki customDimensions alanında yer alan userAgent özniteliği bu verilere sahiptir. Kullanıcıların sisteme eriştiği farklı kaynaklara ilişkin bir genel bakış almak için aşağıdaki sorguyu kullanabilirsiniz:

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

dependencies
| where ['type'] == "UCI REQUEST"
CustomDimensions.userAgent değeri şununla başladığında: Sisteme erişen kullanıcı nerededir?
Mozilla Tarayıcı Türü, sürüm
azure-logic-apps Azure Logic Apps
PowerApps Power Apps
Microsoft Office Excel Office Excel
Portallar Portallar
DynamicsDataIntegration Dynamics Veri Tümleştirmesi
XrmToolBox.exe XrmToolBox
PluginRegistration Eklenti Kaydı
LogicAppsDesigner Logic Apps Tasarımcısı
Apache-HttpClient Apache HTTP istemcisi
Microsoft Flow Power Automate
UnifiedServiceDesk Birleşik Hizmet Masası
PostmanRuntime Postman
OfficeGroupsConnector Office Grupları bağlayıcısı
Microsoft.Data.Mashup Power Query
Apache-Olingo Apache Olingo
Dalvik Android
Jakarta Commons-Http Jakarta
Informatica Informatica
axios Axios
node-fetch NodeJS
LinkedInBot LinkedInBot

Tarayıcıdan, mobil veya katıştırılmış uygulamalardan erişen kullanıcı sayısını nasıl alabilirim?

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

Aşağıdaki görüntüde bu sorgudan alınan sonuçların bir örnek kümesi gösterilmektedir.

Application Insights örnek sonuç kümesi.

Belirli bir kullanıcıya nasıl daraltabilirim?

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

Application Insights'ı İzleyici ile birlikte nasıl kullanabilirim?

Azure İzleyici Birleşik Arabirim tarafındaki bir oturumda gerçek zamanlı sorun gidermeye yardımcı olur. Uçtan uca işlem istekleri Application Insights'da muhtemelen kullanılabilir olacaktır. Belirli bir eyleme ait günlüklere bakmak için, İzleyici'nin olay ayrıntıları sayfasındaki bir satırdan aktivite kimliğini not edin. Aşağıdaki sorguyu kullanarak günlükleri bulabilirsiniz:

union *
| where operation_Id contains "[ActivityIdHere]"

Monitör, gerçek zamanlı bir hata ayıklama aracıdır; bununla birlikte, veriler birkaç saat boyunca kullanılamayabilir.

Kullanıcılar neden belirli bir formla ilgili sorunlar yaşıyor?

Kullanıcı, belirli bir kuruluş için Birleşik Arabirim uygulamasındaki Hakkında bölümünden kendi oturum kimliğini paylaşabilir.

Ayarlar > Hakkında.

Ayarlar > Oturum Kimliği Hakkında.

Daha sonra bu kimliği, o oturumdaki tüm aktivitelere bakarak sorunları bulmak için kullanabilirsiniz. Aşağıdaki sorguyu kullanın:

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

Hangi formlar farklı konumlarda kullanılıyor ve bu konumlarda formların yük performansı nedir?

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

Harici bir API hatayı çağırır mı ve hata ayıklamaya yardımcı olmak için hata yığınında detaya gidebilir miyim?

Hatalar panelinin Tarayıcı görünümü, Birleşik Arabirim giden isteklerini içerir. Dataverse'e veya kuruluşa giden istekler kuruluş URL'sini içerir. Diğer URL'lere giden başka istekler olabilir (örneğin, aşağıdaki görüntüde, kuruluşun dc.services.visualstudio.com'u açan bir özelleştirmesi vardır). Bu harici giden çağrılardaki hataları daha ayrıntılı şekilde incelemek için uçtan uca harekete göz atın.

Hatalar paneli görünümüne göz atın.

Belirli form eylemleri için performans eşiğiyle ilgili bir uyarı ayarlayabilir miyim? Uyarı alındığında, bir oluşturucunun sorunu tanılamasına ve gidermesine izin verecek mi?

Evet. Uygulamanızın durumunu izlemek için Application Insights'da uyarılar ayarlayabilirsiniz.