Hvilke data er tilgjengelig for modelldrevne apper?
Notat
Det nye og forbedrede Power Platform-administrasjonssenteret er nå i offentlig forhåndsversjon! Vi utformet det nye administrasjonssenteret slik at det er enklere å bruke, med oppgaveorientert navigering som hjelper deg med å oppnå bestemte resultater raskere. Vi kommer til å publisere ny og oppdatert dokumentasjon etter hvert som det nye Power Platform-administrasjonssenteret blir allment tilgjengelig.
Ytelsesdata relatert til sidebelastninger og Enhetlig grensesnitt (UCI) for utgående nettverksforespørsler er tilgjengelige for modelldrevne apper.
Hvilken type sideinnlastinger er tilgjengelige?
Type | Tilgjengelige ytelses- og diagnosedata |
---|---|
Instrumentbordinnlastning (UCI) – Nettleser | Ja |
Instrumentbordinnlasting (UCI) – innebygd | Ja |
Instrumentbordinnlastning (UCI) – MobileApplication | Ja |
Instrumentbordinnlastning (UCI) – MailApp | Ja |
Instrumentbordinnlastning (UCI) – MobileApplication | Ja |
EditForm-innlasting (UCI) – Nettleser | Ja |
EditForm-innlasting (UCI) – innebygd | Ja |
EditForm-innlasting (UCI) – MailApp | Ja |
EditForm-innlasting (UCI) - MobileApplication | Ja |
EntityList-innlasting (UCI) – Nettleser | Ja |
EntityList-innlasting (UCI) – innebygd | Ja |
EntityList-innlasting (UCI) – MailApp | Ja |
EntityList-innlasting (UCI) – MobileApplication | Ja |
Start app - (UCI) – nettleser | Ja |
Start app - (UCI) - innebygd | Ja |
Start app - (UCI) – MailApp | Ja |
Start app – (UCI) – MobileApplication | Ja |
QuickCreateForm-innlasting (UCI) – Nettleser | Ja |
QuickCreateForm-innlasting (UCI) – innebygd | Ja |
QuickCreateForm-innlasting (UCI) – MailApp | Ja |
QuickCreateForm-innlasting (UCI) – MobileApplication | Ja |
SaveForm | Ikke tilgjengelig for øyeblikket |
CommandButton-handlinger | Ikke tilgjengelig for øyeblikket |
Hvor er data for sideinnlasting tilgjengelig?
Disse dataene går til pageViews-tabellen i Application Insights. En oppføring logges hver gang en bruker laster inn en side i Enhetlig grensesnitt. Dataene som logges, omfatter bare «rene» innlastinger. Innlastinger der varigheten ikke kan måles nøyaktig – hurtig navigasjon, bytte fra appen, en varselmelding – blir ikke inkludert. Derfor anbefaler vi at du ikke bruker disse dataene til nøyaktige tall relatert til bruksanalyse.
Det finnes andre egenskaper i customDimensions som gir flere detaljer for innlastinger av Enhetlig grensesnitt-siden. Denne spørringen returnerer for eksempel verdiene for alle attributtene i pageViews-tabellen.
pageViews
| take 1
pageViews-tabellattributtene omfatter følgende:
- appModule: Navnet på appmodulen.
- entityName: Dette attributtet finnes når det er relevant. Det er tilgjengelig på sidetyper som EditForm, EntityList og Instrumentbord når de er bundet til en enhet. I noen tilfeller er ikke skjemaet bundet til en enhet, og verdien vises som udefinert.
- formId: formId identifiserer et skjema entydig og kan brukes til å koordinere problemer som påvirker det bestemte skjemaet.
- hostType: Nettleser/MobileApplication/Embedded
- isBoot: Er dette den første innlastingen i en økt?
-
loadType
- 0: Første besøk til en bestemt sidetype (for eksempel første besøk i et skjema).
- 1: Første besøk til en bestemt konfigurasjon (for eksempel første besøk i et kontoskjema).
- 2: Første besøk til en bestemt oppføring (for eksempel første besøk til kontooppføring A2).
- 3: Denne nøyaktige URL-adressen har blitt besøkt tidligere.
- navigationOrigin: Typen side brukeren navigerte fra.
- networkConnectivityState: Angir om enheten har en tilkobling.
- pageName: Typen sideinnlastning.
- serverConnectivityState: Om appen er koblet til serveren.
- syncRequestTime: Tiden som gikk med til å vente på synkrone forespørsler.
- coldLatency: Den første beregningen av forsinket nettverk, som inkluderer SSL-håndtrykkstid.
- warmLatency: Den påfølgende beregningen av forsinket nettverk, som er den vanlige forventede ventetiden for hver forespørsel.
- warmThroughput: Beregnet gjennomstrømning for nettverket i Kbps.
For Microsoft Dataverse-hendelser er ID-feltet eller operation_ParentId i Application Insights x-ms-service-request-id. The operationId tilordnes til activityId på serverdelen for feilsøking og støtteforespørsler.
Hvilke type data er tilgjengelig for utgående UCI-nettverksforespørsler?
Dette er kall til andre avhengigheter som er gjort av Enhetlig grensesnitt for å gjengi en bestemt side. De kan være utgående samtaler til Dataverse eller til andre integreringer som Azure DevOps eller Office. Bruk følgende spørring til å hente disse dataene, som er tilgjengelig i avhengighetstabellen for UCI-forespørsel:
dependencies
| where type == "UCI REQUEST"
Avhengighetstabellen for UCI-forespørsel har følgende felt:
Navn: URL-adressen som startes av Enhetlig grensesnitt.
Mål: For øyeblikket det samme som Navn.
Vellykket: Om kallet lyktes eller mislyktes.
UserId: Dataverse-systembruker-IDen for den påloggede brukeren.
Varighet:: Varigheten for kallet.
customDimensions: Inneholder følgende attributter:
- appModule: appModule som ringer.
- bodySize: Størrelsen på svaret, kodet og dekodet.
- bufret: Om forespørselen gikk til den lokale hurtigbufferen eller måtte gå til serveren. Dette fungerer ikke som forventet hvis sluttbrukeren var i Internet Explorer-leseren.
- nedlasting: Tiden det tok å laste ned svaret.
- stopp: Klokkeslettet forespørselen ventet i leserkøen.
- ttfb: Tiden som gikk med til å vente på det første svaret, også kjent som "tid til første byte". Denne tiden fanger opp ventetiden for en omreise til serveren i tillegg til tiden som brukes på å vente på at serveren skal levere svaret.
- coldLatency: Den første beregningen av forsinket nettverk, som inkluderer SSL-håndtrykkstid.
- warmLatency: Den påfølgende beregningen av forsinket nettverk, som er den vanlige forventede ventetiden for hver forespørsel.
- warmThroughput: Beregnet gjennomstrømning for nettverket i Kbps.
Oppdage og analysere scenarier
Hvorfor opplever noen av brukerne treghet på Enhetlig grensesnitt?
Ett scenario der registrering og analyse kan være nyttig, er når en bruker fra en region (for eksempel Asia) rapporterer at et skjema yter langsomt. Denne brukeren som er basert i Asia, har kanskje tilgang til et miljø eller en organisasjon i Nord-Amerika. Detaljene viser den totale innlastingstiden i tillegg til den nettverksrelaterte varigheten. Det kan godt hende at dette er en årsak til den langsomme ytelsen brukeren oppfatter.
Du kan bruke attributtene warmLatency, warmThroughput og coldLatency for å forstå hvor mye tid som brukes på sideinnlastninger og andre Enhetlig grensesnitt-forespørsler, som vist i følgende bilde.
I forespørselen ovenfor tar Enhetlig grensesnitt lengre tid enn den faktiske Dataverse API-forespørselen (web-API). Analysen i dette tilfellet er varigheten av Dataverse API-kallet (56 ms) pluss verdien av CustomDimensions.warmLatency (89 ms), som utgjør nesten varigheten av hele operasjonen (144 ms). warmLatency-verdien indikerer treghet for den bestemte klienten, og kan være et problem du kan analysere på brukernivå ved å bruke følgende spørring:
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
Kan jeg finne ut hvordan brukeren får tilgang til systemet?
userAgent-attributtet i customDimensions-feltet i Application Insights forespørsel-tabellen har disse dataene. Du kan bruke følgende spørring for å få en oversikt over de ulike kildene som brukerne får tilgang til systemet fra:
pageViews
| summarize count() by tostring(customDimensions.userAgent), user_Id
dependencies
| where ['type'] == "UCI REQUEST"
Når verdien customDimensions.userAgent starter med | Hvor får brukeren tilgang til systemet fra? |
---|---|
Mozilla | Nettlesertype, versjon |
azure-logic-apps | Azure Logic Apps |
PowerApps | Power Apps |
Microsoft Office Excel | Office Excel |
Portaler | Portaler |
DynamicsDataIntegration | Dynamics-dataintegrasjon |
XrmToolBox.exe | XrmToolBox |
PluginRegistration | Registrering av plugin-modul |
LogicAppsDesigner | Logic Apps Designer |
Apache-HttpClient | Apache HTTP-klient |
Microsoft Flow | Power Automate |
UnifiedServiceDesk | Unified Service Desk |
PostmanRuntime | Postman |
OfficeGroupsConnector | Office Groups-kobling |
Microsoft.Data.Mashup | Power Query |
Apache-Olingo | Apache Olingo |
Dalvik | Android |
Jakarta Commons-Http | Jakarta |
Informatica | Informatica |
axios | Axios |
node-fetch | NodeJS |
LinkedInBot | LinkedInBot |
Hvordan teller jeg antall brukere som får tilgang til fra nettleser-, mobil- eller innebygde programmer?
pageViews
| summarize count() by tostring(customDimensions.hostType)
Bildet nedenfor viser et eksempelsett med resultater fra denne spørringen.
Hvordan begrenser jeg til en bestemt bruker?
pageViews
| where user_Id == "[userid]"
| summarize count() by tostring(customDimensions.hostType)
Hvordan bruker jeg Application Insights med Monitor?
Azure Monitor hjelper deg med feilsøking i sanntid i forbindelse med en økt fra Enhetlig grensesnitt-siden. Ende-til-ende-transaksjonsforespørsler vil sannsynligvis være tilgjengelige i Application Insights. Hvis du vil se på loggene for en gitt handling, noterer du aktivitets-IDen fra en rad på siden for hendelsesdetaljer i Monitor. Du kan finne loggene ved å bruke følgende spørring:
union *
| where operation_Id contains "[ActivityIdHere]"
Monitor er et feilsøkingsverktøy i sanntid, men det kan imidlertid ta noen timer før data blir tilgjengelige i det.
Hvorfor opplever brukerne problemer med et bestemt skjema?
Brukeren kan dele økt-ID-en sin fra Om-delen i Enhetlig grensesnitt for den bestemte organisasjonen.
Du kan deretter bruke denne IDen til å finne problemer ved å se på alle aktivitetene i den økten. Bruk følgende spørring:
union *
| where session_Id == '[sessionIdHere]'
Hvilke skjemaer brukes på ulike steder, og hva er belastningsytelsen for skjemaene på disse stedene?
pageViews
| summarize avg(duration) by name, client_City, client_CountryOrRegion
Er et eksternt API-kall feilen, og kan jeg drille ned i feilstakken for å bidra til feilsøking?
Nettleser-visningen for Feil-panelet inneholder Enhetlig grensesnitt for utgående forespørsler. Forespørslene som går til Dataverse eller organisasjonen, inneholder organisasjonens URL-adresse. Det kan hende at andre forespørsler går til andre URL-adresser (for eksempel i følgende bilde har organisasjonen en tilpassing som kaller opp dc.services.visualstudio.com). Du kan se på ende-til-ende-transaksjonen for å undersøke feilene for de eksterne utgående samtalene ytterligere.
Kan jeg angi et varsel på ytelsesterskelen for bestemte skjemahandlinger? Når varselet mottas, vil det tillate en oppretter å diagnostisere og feilsøke problemet?
Ja. Du kan konfigurere varsler i Application Insights for å overvåke programtilstanden.