Exportera telemetri från Application Insights
Vill du behålla telemetrin längre än standardkvarhållningsperioden? Eller vill du bearbeta det på något specialiserat sätt? Kontinuerlig export är perfekt för detta ändamål. De händelser som visas i Application Insights-portalen kan exporteras till lagring i Azure i JSON-format. Därifrån kan du ladda ned dina data och skriva den kod du behöver för att bearbeta dem.
Viktigt
- Den 29 februari 2024 kommer löpande export att bli inaktuell som en del av utfasningen av klassiska Application Insights.
- När du migrerar till en arbetsytebaserad Application Insights-resurs måste du använda diagnostikinställningar för att exportera telemetri. Alla arbetsytebaserade Application Insights-resurser måste använda diagnostikinställningar.
- Export av diagnostikinställningar kan öka kostnaderna. Mer information finns i Diagnostikinställningarbaserad export.
Innan du konfigurerar kontinuerlig export finns det några alternativ som du kanske vill överväga:
- Med knappen Exportera överst i ett mått eller en sökflik kan du överföra tabeller och diagram till ett Excel-kalkylblad.
- Log Analytics tillhandahåller ett kraftfullt frågespråk för telemetri. Den kan också exportera resultat.
- Om du vill utforska dina data i Power BI kan du göra det utan att använda kontinuerlig export om du har migrerat till en arbetsytebaserad resurs.
- Med REST-API:et för dataåtkomst kan du komma åt din telemetri programmatiskt.
- Du kan också komma åt konfigurationen för kontinuerlig export via PowerShell.
När kontinuerlig export kopierar dina data till lagringen, där de kan stanna så länge du vill, är de fortfarande tillgängliga i Application Insights under den vanliga kvarhållningsperioden.
Regioner som stöds
Kontinuerlig export stöds i följande regioner:
- Sydostasien
- Kanada, centrala
- Indien, centrala
- Europa, norra
- Storbritannien, södra
- Australien, östra
- Japan, östra
- Sydkorea, centrala
- Frankrike, centrala
- Asien, östra
- USA, västra
- USA, centrala
- USA, östra 2
- USA, södra centrala
- USA, västra 2
- Sydafrika, norra
- USA, norra centrala
- Brasilien, södra
- Schweiz, norra
- Australien, sydöstra
- Storbritannien, västra
- Tyskland, västra centrala
- Schweiz, västra
- Australien, centrala 2
- Förenade Arabemiraten, centrala
- Brasilien, sydöstra
- Australien, centrala
- Förenade Arabemiraten, norra
- Norge, östra
- Japan, västra
Anteckning
Kontinuerlig export fortsätter att fungera för program i USA, östra och Europa, västra om exporten konfigurerades före den 23 februari 2021. Nya regler för kontinuerlig export kan inte konfigureras för något program i USA, östra eller Europa, västra, oavsett när programmet skapades.
Avancerad lagringskonfiguration för kontinuerlig export
Kontinuerlig export stöder inte följande Azure Storage-funktioner eller konfigurationer:
- Användning av Azure Virtual Network/Azure Storage-brandväggar med Azure Blob Storage.
- Azure Data Lake Storage Gen2.
Skapa en kontinuerlig export
Anteckning
Ett program kan inte exportera mer än 3 TB data per dag. Om mer än 3 TB per dag exporteras inaktiveras exporten. Om du vill exportera utan en gräns använder du diagnostikinställningsbaserad export.
I Application Insights-resursen för din app under Konfigurera till vänster öppnar du Kontinuerlig export och väljer Lägg till.
Välj de telemetridatatyper som du vill exportera.
Skapa eller välj ett Azure Storage-konto där du vill lagra data. Mer information om alternativ för lagringspriser finns på sidan Prissättning.
Välj Lägg till>exportmållagringskonto>. Skapa sedan en ny butik eller välj en befintlig butik.
Varning
Som standard anges lagringsplatsen till samma geografiska region som application insights-resursen. Om du lagrar i en annan region kan det medföra överföringsavgifter.
Skapa eller välj en container i lagringen.
Anteckning
När du har skapat exporten börjar nyligen inmatade data flöda till Azure Blob Storage. Kontinuerlig export överför endast ny telemetri som skapas eller matas in efter att kontinuerlig export har aktiverats. Data som fanns innan kontinuerlig export aktiverades exporteras inte. Det finns inget sätt att retroaktivt exportera tidigare skapade data med hjälp av kontinuerlig export.
Det kan uppstå en fördröjning på ungefär en timme innan data visas i lagringen.
När den första exporten är klar hittar du följande struktur i bloblagringscontainern. (Den här strukturen varierar beroende på vilka data du samlar in.)
Name | Beskrivning |
---|---|
Tillgänglighet | Rapporterar webbtester för tillgänglighet. |
Händelse | Anpassade händelser som genereras av TrackEvent(). |
Undantag | Rapporterar undantag på servern och i webbläsaren. |
Meddelanden | Skickas av TrackTrace och av loggningskorten. |
Mått | Genereras av mått-API-anrop. |
PerformanceCounters | Prestandaräknare som samlas in av Application Insights. |
Begäranden | Skickas av TrackRequest. Standardmodulerna använder begäranden för att rapportera serverns svarstid, mätt på servern. |
Redigera kontinuerlig export
Välj Kontinuerlig export och välj det lagringskonto som ska redigeras.
Stoppa kontinuerlig export
Om du vill stoppa exporten väljer du Inaktivera. När du väljer Aktivera igen startas exporten om med nya data. Du får inte de data som kom till portalen när exporten inaktiverades.
Om du vill stoppa exporten permanent tar du bort den. Om du gör det tas inte dina data bort från lagringen.
Kan du inte lägga till eller ändra en export?
Om du vill lägga till eller ändra exporter behöver du åtkomstbehörighet som ägare, deltagare eller Application Insights-deltagare. Lär dig mer om roller.
Vilka händelser får du?
Exporterade data är den råtelemetri som vi får från ditt program med tillagda platsdata från klientens IP-adress.
Data som har tagits bort genom sampling ingår inte i exporterade data.
Andra beräknade mått ingår inte. Vi exporterar till exempel inte genomsnittlig CPU-användning, men vi exporterar den råtelemetri som medelvärdet beräknas från.
Data innehåller också resultatet av eventuella webbtester för tillgänglighet som du har konfigurerat.
Anteckning
Om programmet skickar mycket data kan samplingsfunktionen fungera och bara skicka en bråkdel av den genererade telemetrin. Läs mer om sampling.
Granska data
Du kan inspektera lagringen direkt i portalen. Välj Start på menyn längst till vänster. Längst upp där det står Azure-tjänster väljer du Lagringskonton. Välj namnet på lagringskontot och välj Tjänstblobar> påöversiktssidan. Välj slutligen containernamnet.
Om du vill granska Azure Storage i Visual Studio väljer du Visa>Cloud Explorer. Om du inte har det menykommandot måste du installera Azure SDK. Öppna dialogrutan Nytt projekt , expandera Visual C#/Cloud och välj Hämta Microsoft Azure SDK för .NET.
När du öppnar bloblagret visas en container med en uppsättning blobfiler. Du ser URI:n för varje fil som härleds från ditt Application Insights-resursnamn, dess instrumentationsnyckel och telemetrityp, datum och tid. Resursnamnet är bara gemener och instrumentationsnyckeln utelämnar bindestreck.
Anteckning
Stödet för inmatning av instrumentationsnycklar upphör den 31 mars 2025. Inmatningen av instrumenteringsnyckeln fortsätter att fungera, men vi kommer inte längre att tillhandahålla uppdateringar eller stöd för funktionen. Övergå till anslutningssträngar för att dra nytta av nya funktioner.
Datum och tid är UTC och är när telemetrin deponerades i arkivet, inte den tid då den genererades. Därför kan du flytta linjärt genom data om du skriver kod för att ladda ned data.
Här är sökvägens form:
$"{applicationName}_{instrumentationKey}/{type}/{blobDeliveryTimeUtc:yyyy-MM-dd}/{ blobDeliveryTimeUtc:HH}/{blobId}_{blobCreationTimeUtc:yyyyMMdd_HHmmss}.blob"
Plats:
blobCreationTimeUtc
är den tidpunkt då bloben skapades i den interna mellanlagringen.blobDeliveryTimeUtc
är den tidpunkt då bloben kopieras till exportmållagringen.
Dataformat
Data formateras så att:
Varje blob är en textfil som innehåller flera
\n
avgränsade rader. Den innehåller telemetrin som bearbetas under en tidsperiod på ungefär en halv minut.Varje rad representerar en telemetridatapunkt, till exempel en begäran eller sidvy.
Varje rad är ett oformaterat JSON-dokument. Om du vill visa raderna öppnar du bloben i Visual Studio och väljer Redigera>avancerad>formatfil.
Tidsvaraktigheterna är i tick, där 10 000 tick = 1 ms. Dessa värden visar till exempel en tid på 1 ms för att skicka en begäran från webbläsaren, 3 ms för att ta emot den och 1,8 s för att bearbeta sidan i webbläsaren:
"sendRequest": {"value": 10000.0},
"receiveRequest": {"value": 30000.0},
"clientProcess": {"value": 17970000.0}
En detaljerad datamodellreferens för egenskapstyperna och värdena finns i Application Insights exportdatamodell.
Bearbeta data
I liten skala kan du skriva kod för att hämta dina data och läsa dem i ett kalkylblad. Exempel:
private IEnumerable<T> DeserializeMany<T>(string folderName)
{
var files = Directory.EnumerateFiles(folderName, "*.blob", SearchOption.AllDirectories);
foreach (var file in files)
{
using (var fileReader = File.OpenText(file))
{
string fileContent = fileReader.ReadToEnd();
IEnumerable<string> entities = fileContent.Split('\n').Where(s => !string.IsNullOrWhiteSpace(s));
foreach (var entity in entities)
{
yield return JsonConvert.DeserializeObject<T>(entity);
}
}
}
}
Ett större kodexempel finns i Använda en arbetsroll.
Ta bort dina gamla data
Du ansvarar för att hantera din lagringskapacitet och ta bort gamla data om det behövs.
Återskapa lagringsnyckeln
Om du ändrar lagringsnyckel slutar den löpande exporten att fungera. Du ser ett meddelande i ditt Azure-konto.
Välj fliken Kontinuerlig export och redigera exporten. Redigera värdetExportera mål , men låt samma lagring vara markerad. Välj Ja för att bekräfta.
Kontinuerlig export startas om.
Exportera exempel
För exportexempel, se:
I större skalor bör du överväga HDInsight Hadoop-kluster i molnet. HDInsight tillhandahåller olika tekniker för att hantera och analysera stordata. Du kan använda den för att bearbeta data som har exporterats från Application Insights.
Vanliga frågor och svar
Det här avsnittet innehåller svar på vanliga frågor.
Kan jag hämta en engångsnedladdning av ett diagram?
Du kan göra det. Längst upp på fliken väljer du Exportera data.
Jag har konfigurerat en export, men varför finns det inga data i mitt arkiv?
Tog Application Insights emot telemetri från din app sedan du konfigurerade exporten? Du får bara nya data.
Jag försökte konfigurera en export, men varför nekades jag åtkomst?
Om kontot ägs av din organisation måste du vara medlem i grupperna Ägare eller Deltagare.
Kan jag exportera direkt till min egen lokala butik?
Nej. Vår exportmotor fungerar för närvarande bara med Azure Storage just nu.
Finns det någon gräns för mängden data som du lägger i mitt arkiv?
Nej. Vi fortsätter att skicka in data tills du tar bort exporten. Vi slutar om vi når de yttre gränserna för Blob Storage, men den gränsen är enorm. Det är upp till dig att styra hur mycket lagringsutrymme du använder.
Hur många blobar ska jag se i lagringen?
- För varje datatyp som du har valt att exportera skapas en ny blob varje minut, om data är tillgängliga.
- För program med hög trafik allokeras extra partitionsenheter. I det här fallet skapar varje enhet en blob varje minut.
Jag återskapade nyckeln till min lagring eller ändrade namnet på containern, men varför fungerar inte exporten?
Redigera exporten och välj fliken Exportera mål . Lämna samma lagring markerad som tidigare och välj OK för att bekräfta. Exporten startas om. Om ändringen har inträffat under de senaste dagarna förlorar du inte data.
Kan jag pausa exporten?
Ja. Välj Inaktivera.
Kodexempel
- Stream Analytics-exempel
- Exportera till SQL med hjälp av Stream Analytics
- Detaljerad datamodellreferens för egenskapstyper och värden
Diagnostikinställningsbaserad export
Export av diagnostikinställningar rekommenderas eftersom det innehåller extra funktioner:
- Azure Storage-konton med virtuella nätverk, brandväggar och privata länkar.
- Exportera till Azure Event Hubs.
Exporten av diagnostikinställningar skiljer sig ytterligare från kontinuerlig export på följande sätt:
- Uppdaterat schema.
- Telemetridata skickas när de tas emot i stället för i batchbaserade uppladdningar.
Viktigt
Extra kostnader kan tillkomma på grund av en ökning av anrop till målet, till exempel ett lagringskonto.
Så här migrerar du till export av diagnostikinställningar:
- Aktivera diagnostikinställningar på klassiska Application Insights.
- Konfigurera dataexporten: Välj Diagnostikinställningar>Lägg till diagnostikinställning inifrån Application Insights-resursen.
- Kontrollera att den nya dataexporten har konfigurerats på samma sätt som du exporterar kontinuerligt
Varning
Om du vill lagra diagnostikloggar på en Log Analytics-arbetsyta finns det två saker att tänka på för att undvika att se dubblettdata i Application Insights:
- Målet kan inte vara samma Log Analytics-arbetsyta som Application Insights-resursen är baserad på.
- Application Insights-användaren kan inte ha åtkomst till båda arbetsytorna. Ange Åtkomstkontrollläge för Log Analytics till Kräver behörigheter för arbetsyta. Via rollbaserad åtkomstkontroll i Azure kontrollerar du att användaren bara har åtkomst till Log Analytics-arbetsytan som Application Insights-resursen baseras på.
Dessa steg är nödvändiga eftersom Application Insights använder telemetri i alla Application Insights-resurser, inklusive Log Analytics-arbetsytor. Syftet med detta är att tillhandahålla transaktionsåtgärder från slutpunkt till slutpunkt och korrekta programmappningar. Eftersom samma tabellnamn används i diagnostikloggar kan dubbletter av telemetri visas om användaren har åtkomst till flera resurser som innehåller samma data.
Application Insights– exportera datamodell
I den här tabellen visas egenskaperna för telemetri som skickas från Application Insights SDK:er till portalen. Du ser dessa egenskaper i datautdata från kontinuerlig export. De visas också i egenskapsfilter i Metric Explorer och Diagnostiksökning.
Saker att tänka på:
[0]
i dessa tabeller anger en punkt i sökvägen där du måste infoga ett index. men det är inte alltid 0.- Tidsvaraktigheterna är i tiondelar av en mikrosekunder, så 10000000 == 1 sekund.
- Datum och tider är UTC och anges i ISO-format
yyyy-MM-DDThh:mm:ss.sssZ
Exempel
// A server report about an HTTP request
{
"request": [
{
"urlData": { // derived from 'url'
"host": "contoso.org",
"base": "/",
"hashTag": ""
},
"responseCode": 200, // Sent to client
"success": true, // Default == responseCode<400
// Request id becomes the operation id of child events
"id": "fCOhCdCnZ9I=",
"name": "GET Home/Index",
"count": 1, // 100% / sampling rate
"durationMetric": {
"value": 1046804.0, // 10000000 == 1 second
// Currently the following fields are redundant:
"count": 1.0,
"min": 1046804.0,
"max": 1046804.0,
"stdDev": 0.0,
"sampledValue": 1046804.0
},
"url": "/"
}
],
"internal": {
"data": {
"id": "7f156650-ef4c-11e5-8453-3f984b167d05",
"documentVersion": "1.61"
}
},
"context": {
"device": { // client browser
"type": "PC",
"screenResolution": { },
"roleInstance": "WFWEB14B.fabrikam.net"
},
"application": { },
"location": { // derived from client ip
"continent": "North America",
"country": "United States",
// last octagon is anonymized to 0 at portal:
"clientip": "168.62.177.0",
"province": "",
"city": ""
},
"data": {
"isSynthetic": true, // we identified source as a bot
// percentage of generated data sent to portal:
"samplingRate": 100.0,
"eventTime": "2016-03-21T10:05:45.7334717Z" // UTC
},
"user": {
"isAuthenticated": false,
"anonId": "us-tx-sn1-azr", // bot agent id
"anonAcquisitionDate": "0001-01-01T00:00:00Z",
"authAcquisitionDate": "0001-01-01T00:00:00Z",
"accountAcquisitionDate": "0001-01-01T00:00:00Z"
},
"operation": {
"id": "fCOhCdCnZ9I=",
"parentId": "fCOhCdCnZ9I=",
"name": "GET Home/Index"
},
"cloud": { },
"serverDevice": { },
"custom": { // set by custom fields of track calls
"dimensions": [ ],
"metrics": [ ]
},
"session": {
"id": "65504c10-44a6-489e-b9dc-94184eb00d86",
"isFirst": true
}
}
}
Kontext
Alla typer av telemetri åtföljs av ett kontextavsnitt. Alla dessa fält överförs inte med varje datapunkt.
Sökväg | Typ | Kommentarer |
---|---|---|
context.custom.dimensions [0] | object [ ] | Nyckel/värde-strängpar som anges av parametern anpassade egenskaper. Nyckel maxlängd 100, värden max längd 1024. Mer än 100 unika värden, egenskapen kan sökas igenom men kan inte användas för segmentering. Max 200 nycklar per ikey. |
context.custom.metrics [0] | object [ ] | Nyckel/värde-par som anges av den anpassade måttparametern och av TrackMetrics. Nyckelns maxlängd 100, värdena kan vara numeriska. |
context.data.eventTime | sträng | UTC |
context.data.isSynthetic | boolean | Begäran verkar komma från en robot eller ett webbtest. |
context.data.samplingRate | antal | Procentandel telemetri som genereras av SDK:t som skickas till portalen. Intervall 0.0-100.0. |
context.device | objekt | Klientenhet |
context.device.browser | sträng | IE, Chrome, ... |
context.device.browserVersion | sträng | Chrome 48.0, ... |
context.device.deviceModel | sträng | |
context.device.deviceName | sträng | |
context.device.id | sträng | |
context.device.locale | sträng | en-GB, de-DE, ... |
context.device.network | sträng | |
context.device.oemName | sträng | |
context.device.os | sträng | |
context.device.osVersion | sträng | Värdoperativsystem |
context.device.roleInstance | sträng | ID för servervärd |
context.device.roleName | sträng | |
context.device.screenResolution | sträng | |
context.device.type | sträng | PC, Browser, ... |
context.location | objekt | Härledd från clientip . |
context.location.city | sträng | Härledd från clientip , om det är känt |
context.location.clientip | sträng | Den sista oktagonen är anonymiserad till 0. |
context.location.continent | sträng | |
context.location.country | sträng | |
context.location.province | sträng | Delstat eller provins |
context.operation.id | sträng | Objekt som har samma operation id visas som Relaterade objekt i portalen. request id Vanligtvis . |
context.operation.name | sträng | url eller begärandenamn |
context.operation.parentId | sträng | Tillåter kapslade relaterade objekt. |
context.session.id | sträng | Id av en grupp med åtgärder från samma källa. En period på 30 minuter utan en åtgärd signalerar slutet på en session. |
context.session.isFirst | boolean | |
context.user.accountAcquisitionDate | sträng | |
context.user.accountId | sträng | |
context.user.anonAcquisitionDate | sträng | |
context.user.anonId | sträng | |
context.user.authAcquisitionDate | sträng | Autentiserad användare |
context.user.authId | sträng | |
context.user.isAuthenticated | boolean | |
context.user.storeRegion | sträng | |
internal.data.documentVersion | sträng | |
internal.data.id | sträng | Unique id som tilldelas när ett objekt matas in i Application Insights |
Händelser
Anpassade händelser som genereras av TrackEvent().
Sökväg | Typ | Kommentarer |
---|---|---|
händelse [0] antal | heltal | 100/(samplingsfrekvens ). Till exempel 4 => 25 %. |
händelse [0] namn | sträng | Händelsenamn. Maxlängd 250. |
händelse [0] url | sträng | |
händelse [0] urlData.base | sträng | |
event [0] urlData.host | sträng |
Undantag
Rapporterar undantag på servern och i webbläsaren.
Sökväg | Typ | Kommentarer |
---|---|---|
basicException [0] sammansättning | sträng | |
basicException [0] count | heltal | 100/(samplingsfrekvens ). Till exempel 4 => 25 %. |
basicException [0] exceptionGroup | sträng | |
basicException [0] exceptionType | sträng | |
basicException [0] failedUserCodeMethod | sträng | |
basicException [0] failedUserCodeAssembly | sträng | |
basicException [0] handledAt | sträng | |
basicException [0] hasFullStack | boolean | |
basicException [0] id |
sträng | |
basicException [0]-metod | sträng | |
basicException -meddelande [0] | sträng | Undantagsmeddelande. Maxlängd 10k. |
basicException [0] outerExceptionMessage | sträng | |
basicException [0] outerExceptionThrownAtAssembly | sträng | |
basicException [0] outerExceptionThrownAtMethod | sträng | |
basicException [0] outerExceptionType | sträng | |
basicException [0] outerId | sträng | |
basicException [0] parsedStack [0] sammansättning | sträng | |
basicException [0] parsedStack [0] fileName | sträng | |
basicException [0] parsedStack [0] nivå | heltal | |
basicException [0] parsedStack [0] linje | heltal | |
basicException [0] parsedStack [0] metod | sträng | |
basicException -stacken [0] | sträng | Maxlängd 10k |
basicException [0] typeName | sträng |
Spåra meddelanden
Skickas av TrackTrace och av loggningskorten.
Sökväg | Typ | Kommentarer |
---|---|---|
message [0] loggerName | sträng | |
meddelandeparametrar [0] | sträng | |
message [0] raw | sträng | Loggmeddelandet, maxlängd 10k. |
message [0] severityLevel | sträng |
Fjärrberoende
Skickas av TrackDependency. Används för att rapportera prestanda och användning av anrop till beroenden på servern och AJAX-anrop i webbläsaren.
Sökväg | Typ | Kommentarer |
---|---|---|
remoteDependency [0] async | boolean | |
remoteDependency [0] baseName | sträng | |
remoteDependency [0] commandName | sträng | Till exempel "home/index" |
remoteDependency [0] count | heltal | 100/(samplingsfrekvens ). Till exempel 4 => 25 %. |
remoteDependency [0] dependencyTypeName | sträng | HTTP, SQL, ... |
remoteDependency [0] durationMetric.value | antal | Tid från anrop till slutförande av svar efter beroende |
remoteDependency [0] id |
sträng | |
remoteDependency [0] namn | sträng | Url. Maxlängd 250. |
remoteDependency [0] resultCode | sträng | från HTTP-beroende |
remoteDependency [0] lyckades | boolean | |
remoteDependency [0] typ | sträng | Http, Sql,... |
remoteDependency [0] url | sträng | Maxlängd 2000 |
remoteDependency [0] urlData.base | sträng | Maxlängd 2000 |
remoteDependency [0] urlData.hashTag | sträng | |
remoteDependency [0] urlData.host | sträng | Maxlängd 200 |
Begäranden
Skickas av TrackRequest. Standardmodulerna använder detta för att rapportera serverns svarstid, mätt på servern.
Sökväg | Typ | Kommentarer |
---|---|---|
antal förfrågningar [0] | heltal | 100/(samplingsfrekvens ). Exempel: 4 => 25 %. |
request [0] durationMetric.value | antal | Tid från begäran som kommer till svar. 1e7 == 1s |
begäran [0] id |
sträng | Operation id |
namn på begäran [0] | sträng | GET/POST + URL-bas. Maxlängd 250 |
request [0] responseCode | heltal | HTTP-svar skickas till klienten |
begäran [0] lyckades | boolean | Standard == (responseCode < 400) |
begäran [0] url | sträng | Inkluderar inte värd |
begäran [0] urlData.base | sträng | |
begäran [0] urlData.hashTag | sträng | |
begäran [0] urlData.host | sträng |
Sidvisningsprestanda
Skickas av webbläsaren. Mäter tiden för att bearbeta en sida, från användare som initierar begäran för att visa slutförda (exklusive asynkrona AJAX-anrop).
Kontextvärden visar klientens operativsystem och webbläsarversion.
Sökväg | Typ | Kommentarer |
---|---|---|
clientPerformance [0] clientProcess.value | heltal | Tid från slutet av mottagandet av HTML till att visa sidan. |
clientPerformance [0] namn | sträng | |
clientPerformance [0] networkConnection.value | heltal | Tiden det tar att upprätta en nätverksanslutning. |
clientPerformance [0] receiveRequest.value | heltal | Tid från slutet av sändningen av begäran till att ta emot HTML som svar. |
clientPerformance [0] sendRequest.value | heltal | Tiden det tar att skicka HTTP-begäran. |
clientPerformance [0] total.value | heltal | Tid från att börja skicka begäran till att visa sidan. |
clientPerformance [0] url | sträng | URL för den här begäran |
clientPerformance [0] urlData.base | sträng | |
clientPerformance [0] urlData.hashTag | sträng | |
clientPerformance [0] urlData.host | sträng | |
clientPerformance [0] urlData.protocol | sträng |
Sidvisningar
Skickas av trackPageView() eller stopTrackPage
Sökväg | Typ | Kommentarer |
---|---|---|
visa [0] antal | heltal | 100/(samplingsfrekvens ). Till exempel 4 => 25 %. |
view [0] durationMetric.value | heltal | Om du vill kan du ange värdet i trackPageView() eller startTrackPage() – stopTrackPage(). Inte samma som clientPerformance-värden. |
vynamn [0] | sträng | Sidrubrik. Maxlängd 250 |
visa url för [0] | sträng | |
visa [0] urlData.base | sträng | |
visa [0] urlData.hashTag | sträng | |
visa [0] urlData.host | sträng |
Tillgänglighet
Rapporterar webbtester för tillgänglighet.
Sökväg | Typ | Kommentarer |
---|---|---|
tillgänglighet [0] availabilityMetric.name | sträng | availability |
availability [0] availabilityMetric.value | antal | 1.0 eller 0.0 |
tillgänglighet [0] antal | heltal | 100/(samplingsfrekvens ). Till exempel 4 => 25 %. |
tillgänglighet [0] dataSizeMetric.name | sträng | |
availability [0] dataSizeMetric.value | heltal | |
tillgänglighet [0] durationMetric.name | sträng | |
availability [0] durationMetric.value | antal | Testets varaktighet. 1e7==1s |
tillgänglighetsmeddelande [0] | sträng | Feldiagnostik |
tillgänglighet [0] resultat | sträng | Godkänn/Underkänn |
availability [0] runLocation | sträng | Geo-källa för http req |
availability [0] testName | sträng | |
availability [0] testRunId | sträng | |
availability [0] testTimestamp | sträng |
Mått
Genererad av TrackMetric().
Måttvärdet finns i context.custom.metrics[0]
Exempel:
{
"metric": [ ],
"context": {
...
"custom": {
"dimensions": [
{ "ProcessId": "4068" }
],
"metrics": [
{
"dispatchRate": {
"value": 0.001295,
"count": 1.0,
"min": 0.001295,
"max": 0.001295,
"stdDev": 0.0,
"sampledValue": 0.001295,
"sum": 0.001295
}
}
]
}
}
}
Om måttvärden
Måttvärden, både i måttrapporter och på andra håll, rapporteras med en standardobjektstruktur. Exempel:
"durationMetric": {
"name": "contoso.org",
"type": "Aggregation",
"value": 468.71603053650279,
"count": 1.0,
"min": 468.71603053650279,
"max": 468.71603053650279,
"stdDev": 0.0,
"sampledValue": 468.71603053650279
}
För närvarande kan detta ändras i framtiden i alla värden som rapporteras från standard-SDK-modulerna, count==1
och endast fälten name
och value
är användbara. Det enda fallet där de skulle vara annorlunda är om du skriver egna TrackMetric-anrop där du anger de andra parametrarna.
Syftet med de andra fälten är att tillåta att mått aggregeras i SDK för att minska trafiken till portalen. Du kan till exempel beräkna medelvärdet för flera efterföljande avläsningar innan du skickar varje måttrapport. Sedan skulle du beräkna min, max, standardavvikelse och aggregerat värde (summa eller medelvärde) och ange antalet avläsningar som representeras av rapporten.
I tabellerna ovan har vi utelämnat antalet fält som sällan används, min, max, stdDev och sampledValue.
I stället för att föraggregera mått kan du använda sampling om du behöver minska mängden telemetri.
Varaktigheter
Om inget annat anges representeras varaktigheterna i tiondelar av en mikrosekunder, så att 100000000,0 innebär 1 sekund.