Telemetriegegevensmodel van Application Insights
Application Insights verzendt telemetrie van uw webtoepassing naar Azure Portal, zodat u de prestaties en het gebruik van uw toepassing kunt analyseren. Het telemetriemodel is gestandaardiseerd, dus het is mogelijk om platform- en taalonafhankelijke bewaking te maken.
Gegevens die worden verzameld door Application Insights modelleren dit typische uitvoeringspatroon voor toepassingen.
De volgende typen telemetrie worden gebruikt om de uitvoering van uw app te bewaken. De Application Insights SDK van het webtoepassingsframework verzamelt automatisch deze drie typen:
Aanvraag: Gegenereerd om een aanvraag te registreren die door uw app is ontvangen. De Application Insights-web-SDK genereert bijvoorbeeld automatisch een aanvraagtelemetrie-item voor elke HTTP-aanvraag die uw web-app ontvangt.
Een bewerking bestaat uit de threads van uitvoering die een aanvraag verwerken. U kunt ook code schrijven om andere typen bewerkingen te bewaken, zoals een 'ontwaak' in een webtaak of functie die periodiek gegevens verwerkt. Elke bewerking heeft een id. De id kan worden gebruikt om alle telemetriegegevens te groeperen die worden gegenereerd terwijl uw app de aanvraag verwerkt. Elke bewerking slaagt of mislukt en heeft een tijdsduur.
Uitzondering: vertegenwoordigt meestal een uitzondering die ervoor zorgt dat een bewerking mislukt.
Afhankelijkheid: Vertegenwoordigt een aanroep van uw app naar een externe service of opslag, zoals een REST API of SQL. In ASP.NET worden afhankelijkheidsaanroepen naar SQL gedefinieerd door
System.Data
. Aanroepen naar HTTP-eindpunten worden gedefinieerd doorSystem.Net
.
Application Insights biedt drie gegevenstypen voor aangepaste telemetrie:
- Tracering: Wordt rechtstreeks of via een adapter gebruikt om diagnostische logboekregistratie te implementeren met behulp van een instrumentatieframework dat u kent, zoals
Log4Net
ofSystem.Diagnostics
. - Gebeurtenis: wordt meestal gebruikt om gebruikersinteractie met uw service vast te leggen om gebruikspatronen te analyseren.
- Metrische waarde: wordt gebruikt om periodieke scalaire metingen te rapporteren.
Elk telemetrie-item kan de contextinformatie definiëren, zoals de toepassingsversie of gebruikerssessie-id. Context is een set sterk getypte velden die bepaalde scenario's deblokkeren. Wanneer de toepassingsversie correct is geïnitialiseerd, kan Application Insights nieuwe patronen in toepassingsgedrag detecteren die zijn gecorreleerd met opnieuw implementeren.
U kunt sessie-id gebruiken om een storing of gevolgen voor problemen voor gebruikers te berekenen. Het berekenen van het unieke aantal sessie-id-waarden voor een specifieke mislukte afhankelijkheid, fouttracering of kritieke uitzondering geeft u een goed inzicht in een impact.
Het Application Insights-telemetriemodel definieert een manier om telemetrie te correleren met de bewerking waarvan het deel uitmaakt. Een aanvraag kan bijvoorbeeld een SQL Database-aanroep maken en diagnostische gegevens vastleggen. U kunt de correlatiecontext instellen voor die telemetrie-items die deze weer koppelen aan de aanvraagtelemetrie.
Schemaverbeteringen
Het Application Insights-gegevensmodel is een eenvoudige maar krachtige manier om uw toepassingstelemetrie te modelleren. We streven ernaar om het model eenvoudig en slank te houden om essentiële scenario's te ondersteunen en het schema te laten worden uitgebreid voor geavanceerd gebruik.
Gebruik onze GitHub-opslagplaats om problemen en suggesties voor gegevensmodellen of schema's te rapporteren.
Aanvraag
Een aanvraagtelemetrie-item in Application Insights vertegenwoordigt de logische volgorde van de uitvoering die wordt geactiveerd door een externe aanvraag voor uw toepassing. Elke uitvoering van de aanvraag wordt geïdentificeerd door een unieke id
en url
die alle uitvoeringsparameters bevat.
U kunt aanvragen groeperen op logische name
basis en de source
aanvraag definiëren. Code-uitvoering kan resulteren in success
of fail
en heeft een bepaalde duration
. U kunt verdere geslaagde en mislukte uitvoeringen groeperen met behulp van resultCode
. De begintijd voor de aanvraagtelemetrie wordt gedefinieerd op envelopniveau.
Aanvraagtelemetrie ondersteunt het standaard uitbreidbaarheidsmodel met behulp van aangepaste properties
en measurements
.
Notitie
Op 31 maart 2025 eindigt de ondersteuning voor opname van instrumentatiesleutels. Opname van instrumentatiesleutels blijft werken, maar we bieden geen updates of ondersteuning meer voor de functie. Overgang naar verbindingsreeks s om te profiteren van nieuwe mogelijkheden.
Naam
Dit veld is de naam van de aanvraag en vertegenwoordigt het codepad dat wordt gebruikt om de aanvraag te verwerken. Met een lage kardinaliteitswaarde kunt u aanvragen beter groeperen. Voor HTTP-aanvragen vertegenwoordigt deze de HTTP-methode en url-padsjabloon, zoals GET /values/{id}
zonder de werkelijke id
waarde.
Met de Application Insights-web-SDK wordt een aanvraagnaam 'zoals is' verzonden over lettercases. Groeperen in de gebruikersinterface is hoofdlettergevoelig, dus GET /Home/Index
wordt afzonderlijk geteld, GET /home/INDEX
hoewel ze vaak resulteren in dezelfde controller en actie-uitvoering. De reden hiervoor is dat URL's in het algemeen hoofdlettergevoelig zijn. Mogelijk wilt u zien of alle 404
fouten zijn opgetreden voor URL's die in hoofdletters zijn getypt. In het blogbericht kunt u meer lezen over het verzamelen van aanvraagnamen door de ASP.NET web-SDK.
Maximale lengte: 1024 tekens
Id
Id is de id van een aanroepexemplaren van een aanvraag. Deze wordt gebruikt voor correlatie tussen de aanvraag en andere telemetrie-items. De id moet wereldwijd uniek zijn. Zie Telemetriecorrelatie in Application Insights voor meer informatie.
Maximale lengte: 128 tekens
URL
URL is de aanvraag-URL met alle queryreeksparameters.
Maximale lengte: 2048 tekens
Bron
Bron is de bron van de aanvraag. Voorbeelden zijn de instrumentatiesleutel van de beller of het IP-adres van de beller. Zie Telemetriecorrelatie in Application Insights voor meer informatie.
Maximale lengte: 1024 tekens
Duur
De aanvraagduur is opgemaakt als DD.HH:MM:SS.MMMMMM
. Het moet positief en minder dan 1000
dagen zijn. Dit veld is vereist omdat aanvraagtelemetrie de bewerking aangeeft aan het begin en einde.
Antwoordcode
De antwoordcode is het resultaat van een aanvraaguitvoering. Dit is de HTTP-statuscode voor HTTP-aanvragen. Dit kan een HRESULT
waarde of een uitzonderingstype zijn voor andere aanvraagtypen.
Maximale lengte: 1024 tekens
Geslaagd
Geslaagd geeft aan of een oproep is geslaagd of mislukt. Dit veld is vereist. Wanneer een aanvraag niet expliciet false
is ingesteld op , wordt deze beschouwd als geslaagd. Als een uitzondering of geretourneerde foutcode de bewerking heeft onderbroken, stelt u deze waarde in op false
.
Voor webtoepassingen definieert Application Insights een aanvraag als geslaagd wanneer de antwoordcode kleiner is dan 400
of gelijk is aan 401
. Er zijn echter gevallen waarin deze standaardtoewijzing niet overeenkomt met de semantiek van de toepassing.
Antwoordcode 404
kan duiden op 'geen records', die deel kunnen uitmaken van een normale stroom. Het kan ook duiden op een verbroken koppeling. Voor verbroken koppelingen kunt u geavanceerdere logica implementeren. U kunt verbroken koppelingen alleen markeren als fouten wanneer deze koppelingen zich op dezelfde site bevinden door de URL-referrer te analyseren. U kunt ze ook markeren als fouten wanneer ze worden geopend vanuit de mobiele toepassing van het bedrijf. En geef op dezelfde manier 301
302
een fout aan wanneer ze worden geopend vanaf de client die geen ondersteuning biedt voor omleiding.
Gedeeltelijk geaccepteerde inhoud 206
kan duiden op een fout in een algemene aanvraag. Een Application Insights-eindpunt kan bijvoorbeeld een batch telemetrie-items ontvangen als één aanvraag. Het retourneert 206
wanneer sommige items in de batch niet zijn verwerkt. Een toenemend percentage 206
geeft een probleem aan dat moet worden onderzocht. Vergelijkbare logica is van toepassing op 207
meerdere statussen, waarbij het succes het slechtste van afzonderlijke antwoordcodes kan zijn.
Aangepaste eigenschappen
Verzameling naamwaarden van aangepaste eigenschappen: deze verzameling wordt gebruikt om standaardtelemetrie uit te breiden met de aangepaste dimensies. Voorbeelden zijn de implementatiesite die telemetrie of de specifieke eigenschap telemetrie-item heeft geproduceerd, zoals het ordernummer.
- Maximale sleutellengte: 150
- Maximale waardelengte: 8.192
Aangepaste metingen
Verzameling aangepaste metingen: gebruik deze verzameling om benoemde metingen te rapporteren die zijn gekoppeld aan het telemetrie-item. Typische gebruiksvoorbeelden zijn:
- De grootte van de nettolading van de afhankelijkheidstelemetrie.
- Het aantal wachtrijitems dat wordt verwerkt door aanvraagtelemetrie.
- De tijd die een klant nodig had om de wizardstap te voltooien voor het voltooien van de telemetrie van gebeurtenissen.
U kunt een query uitvoeren op aangepaste metingen in Application Analytics:
customEvents
| where customMeasurements != ""
| summarize avg(todouble(customMeasurements["Completion Time"]) * itemCount)
Notitie
- Aangepaste metingen zijn gekoppeld aan het telemetrie-item waartoe ze behoren. Ze zijn onderworpen aan steekproeven met het telemetrie-item dat deze metingen bevat. Als u een meting wilt bijhouden die onafhankelijk is van andere telemetrietypen, gebruikt u metrische telemetrie.
- Gebruik geen tekenreekswaarden voor aangepaste metingen. Alleen numerieke waarden worden ondersteund.
Maximale sleutellengte: 150
Dependency
Afhankelijkheidstelemetrie (in Application Insights) vertegenwoordigt een interactie van het bewaakte onderdeel met een extern onderdeel, zoals SQL of een HTTP-eindpunt.
Naam
Dit veld is de naam van de opdracht die met deze afhankelijkheidsaanroep is gestart. Het heeft een lage kardinaliteitswaarde. Voorbeelden zijn opgeslagen procedurenaam en URL-padsjabloon.
Id
Id is de id van een exemplaar van een afhankelijkheidsaanroep. Deze wordt gebruikt voor correlatie met het telemetrie-item van de aanvraag dat overeenkomt met deze afhankelijkheidsaanroep. Zie Telemetriecorrelatie in Application Insights voor meer informatie.
Gegevens
Dit veld is de opdracht die is gestart door deze afhankelijkheidsaanroep. Voorbeelden zijn SQL-instructie en HTTP-URL met alle queryparameters.
Type
Dit veld is de naam van het afhankelijkheidstype. Het heeft een lage kardinaliteitswaarde voor logische groepering van afhankelijkheden en interpretatie van andere velden, zoals commandName
en resultCode
. Voorbeelden zijn SQL, Azure Table en HTTP.
Doel
Dit veld is de doelsite van een afhankelijkheidsaanroep. Voorbeelden zijn servernaam en hostadres. Zie Telemetriecorrelatie in Application Insights voor meer informatie.
Duur
De aanvraagduur heeft de indeling DD.HH:MM:SS.MMMMMM
. Het moet minder dan 1000
dagen zijn.
Resultaatcode
Dit veld is de resultaatcode van een afhankelijkheidsaanroep. Voorbeelden zijn SQL-foutcode en HTTP-statuscode.
Geslaagd
Dit veld is de indicatie van een geslaagde of mislukte aanroep.
Aangepaste eigenschappen
Verzameling naamwaarden van aangepaste eigenschappen: deze verzameling wordt gebruikt om standaardtelemetrie uit te breiden met de aangepaste dimensies. Voorbeelden zijn de implementatiesite die telemetrie of de specifieke eigenschap telemetrie-item heeft geproduceerd, zoals het ordernummer.
- Maximale sleutellengte: 150
- Maximale waardelengte: 8.192
Aangepaste metingen
Verzameling aangepaste metingen: gebruik deze verzameling om benoemde metingen te rapporteren die zijn gekoppeld aan het telemetrie-item. Typische gebruiksvoorbeelden zijn:
- De grootte van de nettolading van de afhankelijkheidstelemetrie.
- Het aantal wachtrijitems dat wordt verwerkt door aanvraagtelemetrie.
- De tijd die een klant nodig had om de wizardstap te voltooien voor het voltooien van de telemetrie van gebeurtenissen.
U kunt een query uitvoeren op aangepaste metingen in Application Analytics:
customEvents
| where customMeasurements != ""
| summarize avg(todouble(customMeasurements["Completion Time"]) * itemCount)
Notitie
- Aangepaste metingen zijn gekoppeld aan het telemetrie-item waartoe ze behoren. Ze zijn onderworpen aan steekproeven met het telemetrie-item dat deze metingen bevat. Als u een meting wilt bijhouden die onafhankelijk is van andere telemetrietypen, gebruikt u metrische telemetrie.
- Gebruik geen tekenreekswaarden voor aangepaste metingen. Alleen numerieke waarden worden ondersteund.
Maximale sleutellengte: 150
Uitzondering
In Application Insights vertegenwoordigt een uitzonderingsexemplaren een verwerkte of niet-verwerkte uitzondering die is opgetreden tijdens de uitvoering van de bewaakte toepassing.
Probleem-id
De probleem-id identificeert waar de uitzondering is opgetreden in code. Deze wordt gebruikt voor het groeperen van uitzonderingen. Normaal gesproken is het een combinatie van een uitzonderingstype en een functie uit de aanroepstack.
Maximale lengte: 1024 tekens
Ernstniveau
Dit veld is het ernstniveau voor tracering. De waarde kan zijnVerbose
, Information
, , Warning
of Error
Critical
.
Details van uitzondering
(Te verlengen)
Aangepaste eigenschappen
Verzameling naamwaarden van aangepaste eigenschappen: deze verzameling wordt gebruikt om standaardtelemetrie uit te breiden met de aangepaste dimensies. Voorbeelden zijn de implementatiesite die telemetrie of de specifieke eigenschap telemetrie-item heeft geproduceerd, zoals het ordernummer.
- Maximale sleutellengte: 150
- Maximale waardelengte: 8.192
Aangepaste metingen
Verzameling aangepaste metingen: gebruik deze verzameling om benoemde metingen te rapporteren die zijn gekoppeld aan het telemetrie-item. Typische gebruiksvoorbeelden zijn:
- De grootte van de nettolading van de afhankelijkheidstelemetrie.
- Het aantal wachtrijitems dat wordt verwerkt door aanvraagtelemetrie.
- De tijd die een klant nodig had om de wizardstap te voltooien voor het voltooien van de telemetrie van gebeurtenissen.
U kunt een query uitvoeren op aangepaste metingen in Application Analytics:
customEvents
| where customMeasurements != ""
| summarize avg(todouble(customMeasurements["Completion Time"]) * itemCount)
Notitie
- Aangepaste metingen zijn gekoppeld aan het telemetrie-item waartoe ze behoren. Ze zijn onderworpen aan steekproeven met het telemetrie-item dat deze metingen bevat. Als u een meting wilt bijhouden die onafhankelijk is van andere telemetrietypen, gebruikt u metrische telemetrie.
- Gebruik geen tekenreekswaarden voor aangepaste metingen. Alleen numerieke waarden worden ondersteund.
Maximale sleutellengte: 150
Trace
Traceertelemetrie in Application Insights vertegenwoordigt printf
traceringsinstructies met tekst die worden doorzocht. Log4Net
, NLog
en andere vermeldingen van logboekbestanden op basis van tekst worden omgezet in exemplaren van dit type. De trace heeft geen metingen als uitbreidbaarheid.
Bericht
Traceringsbericht.
Maximale lengte: 32.768 tekens
Ernstniveau
Ernstniveau traceren.
Waarden: Verbose
, Information
, , Warning
, en Error
Critical
Aangepaste eigenschappen
Verzameling naamwaarden van aangepaste eigenschappen: deze verzameling wordt gebruikt om standaardtelemetrie uit te breiden met de aangepaste dimensies. Voorbeelden zijn de implementatiesite die telemetrie of de specifieke eigenschap telemetrie-item heeft geproduceerd, zoals het ordernummer.
- Maximale sleutellengte: 150
- Maximale waardelengte: 8.192
Gebeurtenis
U kunt telemetrie-items voor gebeurtenissen maken (in Application Insights) om een gebeurtenis weer te geven die in uw toepassing is opgetreden. Normaal gesproken is het een interactie van een gebruiker, zoals een knop klikken of het uitchecken van een bestelling. Het kan ook een gebeurtenis voor de levenscyclus van een toepassing zijn, zoals initialisatie of een configuratie-update.
Semantisch kunnen gebeurtenissen al dan niet worden gecorreleerd aan aanvragen. Als deze correct wordt gebruikt, is gebeurtenistelemetrie belangrijker dan aanvragen of traceringen. Gebeurtenissen vertegenwoordigen zakelijke telemetrie en moeten worden onderworpen aan afzonderlijke, minder agressieve steekproeven.
Naam
Gebeurtenisnaam: Als u de juiste groepering en nuttige metrische gegevens wilt toestaan, beperkt u uw toepassing zodat er enkele afzonderlijke gebeurtenisnamen worden gegenereerd. Gebruik bijvoorbeeld geen afzonderlijke naam voor elk gegenereerd exemplaar van een gebeurtenis.
Maximale lengte: 512 tekens
Aangepaste eigenschappen
Verzameling naamwaarden van aangepaste eigenschappen: deze verzameling wordt gebruikt om standaardtelemetrie uit te breiden met de aangepaste dimensies. Voorbeelden zijn de implementatiesite die telemetrie of de specifieke eigenschap telemetrie-item heeft geproduceerd, zoals het ordernummer.
- Maximale sleutellengte: 150
- Maximale waardelengte: 8.192
Aangepaste metingen
Verzameling aangepaste metingen: gebruik deze verzameling om benoemde metingen te rapporteren die zijn gekoppeld aan het telemetrie-item. Typische gebruiksvoorbeelden zijn:
- De grootte van de nettolading van de afhankelijkheidstelemetrie.
- Het aantal wachtrijitems dat wordt verwerkt door aanvraagtelemetrie.
- De tijd die een klant nodig had om de wizardstap te voltooien voor het voltooien van de telemetrie van gebeurtenissen.
U kunt een query uitvoeren op aangepaste metingen in Application Analytics:
customEvents
| where customMeasurements != ""
| summarize avg(todouble(customMeasurements["Completion Time"]) * itemCount)
Notitie
- Aangepaste metingen zijn gekoppeld aan het telemetrie-item waartoe ze behoren. Ze zijn onderworpen aan steekproeven met het telemetrie-item dat deze metingen bevat. Als u een meting wilt bijhouden die onafhankelijk is van andere telemetrietypen, gebruikt u metrische telemetrie.
- Gebruik geen tekenreekswaarden voor aangepaste metingen. Alleen numerieke waarden worden ondersteund.
Maximale sleutellengte: 150
Metrische gegevens
Application Insights ondersteunt twee typen metrische telemetrie: enkele meting en vooraf geaggregeerde metrische gegevens. Eén meting is slechts een naam en waarde. Vooraf geaggregeerde metrische gegevens specificeert de minimum- en maximumwaarde van de metrische waarde in het aggregatie-interval en de standaarddeviatie ervan.
Vooraf geaggregeerde telemetrie van metrische gegevens gaat ervan uit dat de aggregatieperiode één minuut was.
Application Insights ondersteunt verschillende bekende metrische namen. Deze metrische gegevens worden in de performanceCounters
tabel geplaatst.
In de volgende tabel ziet u de metrische gegevens die systeem- en procestellers vertegenwoordigen.
.NET-naam | Platformagnostische naam | Beschrijving |
---|---|---|
\Processor(_Total)\% Processor Time |
Werk wordt uitgevoerd... | Totale CPU van de machine. |
\Memory\Available Bytes |
Werk wordt uitgevoerd... | Toont de hoeveelheid fysiek geheugen, in bytes, die beschikbaar is voor processen die op de computer worden uitgevoerd. Dit wordt berekend door de hoeveelheid ruimte op te sommen op de lijsten met nullen, vrije en stand-bygeheugens. Gratis geheugen is klaar voor gebruik. Nulgeheugen bestaat uit pagina's met geheugen gevuld met nullen om te voorkomen dat latere processen gegevens zien die door een eerder proces worden gebruikt. Stand-bygeheugen is geheugen dat is verwijderd uit de werkset van een proces (het fysieke geheugen) op de schijf, maar die nog steeds beschikbaar is om terug te halen. Zie geheugenobject. |
\Process(??APP_WIN32_PROC??)\% Processor Time |
Werk wordt uitgevoerd... | CPU van het proces dat als host fungeert voor de toepassing. |
\Process(??APP_WIN32_PROC??)\Private Bytes |
Werk wordt uitgevoerd... | Geheugen dat wordt gebruikt door het proces dat als host fungeert voor de toepassing. |
\Process(??APP_WIN32_PROC??)\IO Data Bytes/sec |
Werk wordt uitgevoerd... | Frequentie van I/O-bewerkingen die worden uitgevoerd door het proces dat als host fungeert voor de toepassing. |
\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests/Sec |
Werk wordt uitgevoerd... | Aantal aanvragen dat door een toepassing wordt verwerkt. |
\.NET CLR Exceptions(??APP_CLR_PROC??)\# of Exceps Thrown / sec |
Werk wordt uitgevoerd... | Frequentie van uitzonderingen die door een toepassing worden gegenereerd. |
\ASP.NET Applications(??APP_W3SVC_PROC??)\Request Execution Time |
Werk wordt uitgevoerd... | Gemiddelde uitvoeringstijd van aanvragen. |
\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests In Application Queue |
Werk wordt uitgevoerd... | Het aantal aanvragen dat wacht op de verwerking in een wachtrij. |
Zie Metrics - Get voor meer informatie over de REST API voor metrische gegevens.
Naam
Dit veld is de naam van de metrische gegevens die u wilt zien in de Application Insights-portal en de gebruikersinterface.
Weergegeven als
Dit veld is de enkele waarde voor meting. Dit is de som van afzonderlijke metingen voor de aggregatie.
Tellen
Dit veld is het metrische gewicht van de geaggregeerde metrische waarde. Het mag niet worden ingesteld voor een meting.
Min
Dit veld is de minimumwaarde van de geaggregeerde metrische waarde. Het mag niet worden ingesteld voor een meting.
Max
Dit veld is de maximumwaarde van de geaggregeerde metrische waarde. Het mag niet worden ingesteld voor een meting.
Standaarddeviatie
Dit veld is de standaarddeviatie van de geaggregeerde metrische waarde. Het mag niet worden ingesteld voor een meting.
Aangepaste eigenschappen
De metrische waarde met de aangepaste eigenschap CustomPerfCounter
die is ingesteld om aan te true
geven dat de metrische waarde de Prestatiemeteritem van Windows vertegenwoordigt. Deze metrische gegevens worden in de performanceCounters
tabel geplaatst, niet in customMetrics
. De naam van deze metrische waarde wordt ook geparseerd om categorie-, teller- en instantienamen te extraheren.
Verzameling naamwaarden van aangepaste eigenschappen: deze verzameling wordt gebruikt om standaardtelemetrie uit te breiden met de aangepaste dimensies. Voorbeelden zijn de implementatiesite die telemetrie of de specifieke eigenschap telemetrie-item heeft geproduceerd, zoals het ordernummer.
- Maximale sleutellengte: 150
- Maximale waardelengte: 8.192
PageView
PageView-telemetrie (in Application Insights) wordt geregistreerd wanneer een toepassingsgebruiker een nieuwe pagina van een bewaakte toepassing opent. De Page
in deze context is een logische eenheid die door de ontwikkelaar is gedefinieerd als een toepassingstabblad of een scherm en niet noodzakelijkerwijs is gecorreleerd aan het laden van een browserwebpagina of een vernieuwingsactie. Dit onderscheid kan verder worden begrepen in de context van toepassingen met één pagina (SPA's), waarbij de schakeloptie tussen pagina's niet is gekoppeld aan browserpaginaacties. Dit pageViews.duration
is de tijd die nodig is voordat de toepassing de pagina aan de gebruiker presenteert.
Notitie
- Application Insights SDK's registreren standaard één
PageView
gebeurtenis op elke webpagina-laadactie van elke browser, metpageViews.duration
ingevuld door de tijdsinstellingen van de browser. Ontwikkelaars kunnen aanvullende tracering van gebeurtenissen uitbreiden met behulp vanPageView
de trackPageView-API-aanroep. - De standaardretentie van logboeken is 30 dagen. Als u statistieken gedurende een langere periode wilt weergeven
PageView
, moet u de instelling aanpassen.
BrowserTiming meten in Application Insights
Moderne browsers maken metingen beschikbaar voor laadacties voor pagina's met de Performance-API. Application Insights vereenvoudigt deze metingen door gerelateerde tijdsinstellingen te consolideren in standaard metrische browsergegevens , zoals gedefinieerd door deze verwerkingstijddefinities:
Client <--> DNS: client bereikt DNS om de hostnaam van de website op te lossen en DNS reageert met het IP-adres.
Client <--> Webserver: Client maakt TCP en vervolgens TLS-handshakes met de webserver.
Client <--> Webserver: client verzendt de nettolading van de aanvraag, wacht tot de server de aanvraag heeft uitgevoerd en ontvangt het eerste antwoordpakket.
Client <--Webserver: Client ontvangt de rest van de nettoladingbytes van de reactie van de webserver.
Client: Client heeft nu de nettolading van het volledige antwoord en moet inhoud weergeven in de browser en de DOM laden.
browserTimings/networkDuration
= #1 + #2browserTimings/sendDuration
= #3browserTimings/receiveDuration
= #4browserTimings/processingDuration
= #5browsertimings/totalDuration
= #1 + #2 + #3 + #4 + #5pageViews/duration
De
PageView
duur is afkomstig van de interface voor de timing van de prestaties van de browser.PerformanceNavigationTiming.duration
Als
PerformanceNavigationTiming
deze beschikbaar is, wordt die duur gebruikt.Als dit niet zo is, wordt de afgeschafte
PerformanceTiming
interface gebruikt en wordt de verschillen tussenNavigationStart
enLoadEventEnd
berekend.De ontwikkelaar geeft een duurwaarde op bij het vastleggen van aangepaste
PageView
gebeurtenissen met behulp van de trackPageView-API-aanroep.
Context
Elk telemetrie-item heeft mogelijk een sterk getypt contextveld. Elk veld maakt een specifiek bewakingsscenario mogelijk. Gebruik de verzameling aangepaste eigenschappen om aangepaste of toepassingsspecifieke contextuele informatie op te slaan.
Toepassingsversie
Informatie in de contextvelden van de toepassing gaat altijd over de toepassing die de telemetrie verzendt. De toepassingsversie wordt gebruikt om trendwijzigingen in het toepassingsgedrag en de correlatie ervan met de implementaties te analyseren.
Maximale lengte: 1.024
IP-adres van client
Dit veld is het IP-adres van het clientapparaat. IPv4 en IPv6 worden ondersteund. Wanneer telemetrie wordt verzonden vanuit een service, gaat de locatiecontext over de gebruiker die de bewerking in de service heeft gestart. Application Insights extraheert de geografische locatiegegevens uit het IP-adres van de client en kapt deze vervolgens af. Het IP-adres van de client kan niet worden gebruikt als gebruikersidentificeerbare informatie.
Maximale lengte: 46
Apparaattype
Oorspronkelijk is dit veld gebruikt om aan te geven welk type apparaat de gebruiker van de toepassing gebruikt. Tegenwoordig wordt het voornamelijk gebruikt om JavaScript-telemetrie te onderscheiden met het apparaattype Browser
van telemetrie aan de serverzijde met het apparaattype PC
.
Maximale lengte: 64
Bewerkings-id
Dit veld is de unieke id van de hoofdbewerking. Met deze id kan telemetrie worden gegroepeerd over meerdere onderdelen. Zie Telemetriecorrelatie voor meer informatie. Met een aanvraag of een paginaweergave wordt de bewerkings-id gemaakt. Alle andere telemetrie stelt dit veld in op de waarde voor de aanvraag- of paginaweergave.
Maximale lengte: 128
Id van bovenliggende bewerking
Dit veld is de unieke id van het directe bovenliggende item van het telemetrie-item. Zie Telemetriecorrelatie voor meer informatie.
Maximale lengte: 128
Bewerkingsnaam
Dit veld is de naam (groep) van de bewerking. Met een aanvraag of een paginaweergave wordt de naam van de bewerking gemaakt. Alle andere telemetrie-items stellen dit veld in op de waarde voor de aanvraag- of paginaweergave. De naam van de bewerking wordt gebruikt voor het zoeken van alle telemetrie-items voor een groep bewerkingen (bijvoorbeeld GET Home/Index
). Deze contexteigenschap wordt gebruikt om vragen te beantwoorden, zoals wat zijn de typische uitzonderingen die op deze pagina worden gegenereerd?
Maximale lengte: 1.024
Synthetische bron van de bewerking
Dit veld is de naam van de synthetische bron. Sommige telemetrie van de toepassing kan synthetisch verkeer vertegenwoordigen. Het kan de webcrawler zijn die de website, site-beschikbaarheidstests of traceringen indexeert uit diagnostische bibliotheken, zoals de Application Insights SDK zelf.
Maximale lengte: 1.024
Sessie-id
Sessie-id is het exemplaar van de interactie van de gebruiker met de app. Informatie in de contextvelden van de sessie gaat altijd over de gebruiker. Wanneer telemetrie wordt verzonden vanuit een service, gaat de sessiecontext over de gebruiker die de bewerking in de service heeft gestart.
Maximale lengte: 64
Anonieme gebruikers-id
De anonieme gebruikers-id (User.Id) vertegenwoordigt de gebruiker van de toepassing. Wanneer telemetrie wordt verzonden vanuit een service, gaat de gebruikerscontext over de gebruiker die de bewerking in de service heeft gestart.
Steekproeven zijn een van de technieken om de hoeveelheid verzamelde telemetrie te minimaliseren. Met een steekproefalgoritmen wordt geprobeerd om alle gecorreleerde telemetriegegevens te bemonsteren of uit te proberen. Een anonieme gebruikers-id wordt gebruikt voor het genereren van samplingscores, dus een anonieme gebruikers-id moet een willekeurige waarde zijn.
Notitie
Het aantal anonieme gebruikers-id's is niet hetzelfde als het aantal unieke toepassingsgebruikers. Het aantal anonieme gebruikers-id's is meestal hoger omdat telkens wanneer de gebruiker uw app opent op een ander apparaat of een andere browser, of browsercookies opschoont, een nieuwe unieke anonieme gebruikers-id wordt toegewezen. Deze berekening kan ertoe leiden dat dezelfde fysieke gebruikers meerdere keren worden geteld.
Gebruikers-id's kunnen kruislings worden verwezen met sessie-id's om unieke telemetriedimensies te bieden en gebruikersactiviteiten tot stand te brengen gedurende een sessieduur.
Het gebruik van een anonieme gebruikers-id voor het opslaan van een gebruikersnaam is misbruik van het veld. Gebruik een geverifieerde gebruikers-id.
Maximale lengte: 128
Geverifieerde gebruikers-id
Een geverifieerde gebruikers-id is het tegenovergestelde van een anonieme gebruikers-id. Dit veld vertegenwoordigt de gebruiker met een beschrijvende naam. Deze id wordt standaard alleen verzameld met de ASP.NET Framework SDK's AuthenticatedUserIdTelemetryInitializer
.
Gebruik de Application Insights SDK om de geverifieerde gebruikers-id te initialiseren met een waarde die de gebruiker permanent identificeert in browsers en apparaten. Op deze manier worden alle telemetrie-items toegeschreven aan die unieke id. Met deze id kunt u query's uitvoeren op alle telemetriegegevens die voor een specifieke gebruiker zijn verzameld (afhankelijk van steekproefconfiguraties en telemetriefiltering).
Gebruikers-id's kunnen kruislings worden verwezen met sessie-id's om unieke telemetriedimensies te bieden en gebruikersactiviteiten tot stand te brengen gedurende een sessieduur.
Maximale lengte: 1.024
Rekening-ID
De account-id in multitenant-toepassingen is de tenantaccount-id of de naam waarmee de gebruiker werkt. Deze wordt gebruikt voor meer gebruikerssegmentatie wanneer een gebruikers-id en een geverifieerde gebruikers-id niet voldoende zijn. Voorbeelden kunnen een abonnements-id zijn voor Azure Portal of de naam van het blog voor een blogplatform.
Maximale lengte: 1.024
Cloudrol
Dit veld is de naam van de rol waarvan de toepassing deel uitmaakt. Deze wordt rechtstreeks toegewezen aan de rolnaam in Azure. Het kan ook worden gebruikt om microservices te onderscheiden, die deel uitmaken van één toepassing.
Maximale lengte: 256
Cloudrolinstantie
Dit veld is de naam van het exemplaar waarop de toepassing wordt uitgevoerd. Dit is bijvoorbeeld de computernaam voor on-premises of de exemplaarnaam voor Azure.
Maximale lengte: 256
Intern: SDK-versie
Zie SDK-versie voor meer informatie.
Maximale lengte: 64
Intern: Naam van knooppunt
Dit veld vertegenwoordigt de naam van het knooppunt dat wordt gebruikt voor factureringsdoeleinden. Gebruik deze om de standaarddetectie van knooppunten te overschrijven.
Maximale lengte: 256
Veelgestelde vragen
In deze sectie vindt u antwoorden op veelgestelde vragen.
Hoe meet ik de impact van een bewakingscampagne?
PageView-telemetrie bevat URL en u kunt de UTM-parameter parseren met behulp van een regex-functie in Kusto.
Af en toe ontbreken deze gegevens of zijn ze onjuist als de gebruiker of onderneming het verzenden van de gebruikersagent uitschakelt in browserinstellingen. De UA Parser-regexes bevatten mogelijk niet alle apparaatgegevens. Of Application Insights heeft mogelijk niet de meest recente updates geïmplementeerd.
Waarom zou een aangepaste meting zonder fouten slagen, maar het logboek wordt niet weergegeven?
Dit kan gebeuren als u tekenreekswaarden gebruikt. Alleen numerieke waarden werken met aangepaste metingen.
Volgende stappen
Meer informatie over het gebruik van de Application Insights-API voor aangepaste gebeurtenissen en metrische gegevens, waaronder:
- Aangepaste aanvraagtelemetrie
- Aangepaste afhankelijkheidstelemetrie
- Aangepaste traceringstelemetrie
- Telemetrie van aangepaste gebeurtenissen
- Aangepaste metrische telemetrie
Afhankelijkheidstracering instellen voor:
Zie voor meer informatie:
- Bekijk platforms die worden ondersteund door Application Insights.
- Bekijk de configuratie van de standaardcontexteigenschappenverzameling.
- Verken .NET-traceerlogboeken in Application Insights.
- Verken Java-traceringslogboeken in Application Insights.
- Meer informatie over de ingebouwde integratie van Azure Functions met Application Insights voor het bewaken van de uitvoering van functies.
- Meer informatie over het configureren van een ASP.NET Core-toepassing met Application Insights.
- Meer informatie over het diagnosticeren van uitzonderingen in uw web-apps met Application Insights.
- Meer informatie over het uitbreiden en filteren van telemetriegegevens.
- Gebruik steekproeven om de hoeveelheid telemetrie te minimaliseren op basis van het gegevensmodel.