Dela via


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!

Innan du konfigurerar kontinuerlig export finns det några alternativ som du kanske vill överväga:

När kontinuerlig export har kopierat dina data till lagring, 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
  • Södra Storbritannien
  • Australien, östra
  • Japan, östra
  • Sydkorea, centrala
  • Centrala Frankrike
  • Asien, östra
  • Västra USA
  • Centrala USA
  • USA, östra 2
  • USA, södra centrala
  • Västra USA 2
  • Sydafrika, norra
  • Norra centrala USA
  • Brasilien, södra
  • Schweiz, norra
  • Sydöstra Australien
  • Västra Storbritannien
  • 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
  • Västra Japan

Kommentar

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:

Skapa en kontinuerlig export

Kommentar

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.

  1. I Application Insights-resursen för din app under Konfigurera till vänster öppnar du Kontinuerlig export och väljer Lägg till.

  2. Välj de telemetridatatyper som du vill exportera.

  3. 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>lagringskonto för exportmål.> 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.

  4. Skapa eller välj en container i lagringen.

Kommentar

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. Alla data som fanns innan kontinuerlig export aktiverades exporteras inte. Det finns inget sätt att retroaktivt exportera tidigare skapade data med kontinuerlig export.

Det kan ta 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 Skickad 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ådatatelemetri 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 tillgänglighetswebbtester som du har konfigurerat.

Kommentar

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 lagringskontots namn och välj Tjänster>blobarsidan Översikt. Välj slutligen containernamnet.

Om du vill inspektera 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.

Skärmbild som visar hur du inspekterar bloblagret med ett lämpligt verktyg.

Kommentar

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äng för att dra nytta av nya funktioner.

Datum och tid är UTC och är när telemetrin deponerades i butiken, inte den tid då den genererades. Om du därför skriver kod för att ladda ned data kan den gå linjärt genom data.

Här är sökvägens form:

$"{applicationName}_{instrumentationKey}/{type}/{blobDeliveryTimeUtc:yyyy-MM-dd}/{ blobDeliveryTimeUtc:HH}/{blobId}_{blobCreationTimeUtc:yyyyMMdd_HHmmss}.blob"

Där:

  • blobCreationTimeUtc är den tid då bloben skapades i den interna mellanlagringen.
  • blobDeliveryTimeUtc är den tid då bloben kopieras till exportmållagringen.

Dataformat

Data formateras så att:

  • Varje blob är en textfil som innehåller flera \navgrä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.

    Skärmbild som visar hur du visar telemetrin med ett lämpligt verktyg

Tidsvaraktigheterna är i fästingar, 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 egenskapstyper och -värden 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. Till 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 lagringskapaciteten 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ärdet Exportera mål, men låt samma lagring vara markerad. Välj OK för att bekräfta.

Kontinuerlig export startas om.

Exportera exempel

För exportexempel, se:

Överväg HDInsight Hadoop-kluster i molnet i större skala. 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 ett diagram en gång?

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 hur mycket data du lägger i mitt lager?

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åt samma lagring vara markerad som tidigare och välj OK för att bekräfta. Exporten startas om. Om ändringen har varit inom de senaste dagarna kommer du inte att förlora data.

Kan jag pausa exporten?

Ja. Välj Inaktivera.

Kodexempel

Diagnostikinställningsbaserad export

Export av diagnostikinställningar är att föredra 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:

  • Schema har uppdaterats.
  • Telemetridata skickas när de tas emot i stället för i batchuppladdningar.

Viktigt!

Extra kostnader kan uppstå på grund av en ökning av anrop till målet, till exempel ett lagringskonto.

Så här migrerar du till export av diagnostikinställningar:

  1. Aktivera diagnostikinställningar på klassiska Application Insights.
  2. Konfigurera din dataexport: Välj Diagnostikinställningar>Lägg till diagnostikinställning inifrån Application Insights-resursen.
  3. Kontrollera att den nya dataexporten har konfigurerats på samma sätt som med kontinuerlig export

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äget för Log Analytics till Kräver arbetsytebehörigheter. Via rollbaserad åtkomstkontroll i Azure kontrollerar du att användaren bara har åtkomst till Log Analytics-arbetsytan som Application Insights-resursen baseras på.

De här stegen ä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

Den här tabellen visar 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.

Anteckningspunkter:

  • [0] I de här tabellerna anges 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 Type Anteckningar
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 anpassade måttpar och av TrackMetrics. Nyckel maxlängd 100, värden 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 Nummer 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 idVanligtvis .
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 av 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 Type Anteckningar
händelse [0] antal integer 100/(samplingsfrekvens ). Till exempel 4 => 25 %.
händelse [0] namn sträng Händelsenamn. Max längd 250.
händelse [0] url sträng
event [0] urlData.base sträng
event [0] urlData.host sträng

Undantag

Rapporterar undantag på servern och i webbläsaren.

Sökväg Type Anteckningar
basicException [0] sammansättning sträng
basicException [0] antal integer 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] hanteradAt sträng
basicException [0] hasFullStack boolean
basicException [0] id sträng
basicException [0] -metod sträng
basicException [0] meddelande sträng Undantagsmeddelande. Max lä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å integer
basicException [0] parsedStack [0] linje integer
basicException [0] parsedStack [0] metod sträng
basicException [0] stack sträng Max längd 10k
basicException [0] typeName sträng

Spåra meddelanden

Skickas av TrackTrace och av loggningskorten.

Sökväg Type Anteckningar
message [0] loggerName sträng
meddelandeparametrar [0] sträng
message [0] raw sträng Loggmeddelandet, max lä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 Type Anteckningar
remoteDependency [0] async boolean
remoteDependency [0] baseName sträng
remoteDependency [0] commandName sträng Till exempel "home/index"
remoteDependency [0] count integer 100/(samplingsfrekvens ). Till exempel 4 => 25 %.
remoteDependency [0] dependencyTypeName sträng HTTP, SQL, ...
remoteDependency [0] durationMetric.value Nummer Tid från anrop till slutförande av svar efter beroende
remoteDependency [0] id sträng
remoteDependency [0] namn sträng URL. Max lä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

Skickad av TrackRequest. Standardmodulerna använder detta för att rapporterar serverns svarstid, mätt på servern.

Sökväg Type Anteckningar
begäran [0] antal integer 100/(samplingsfrekvens ). Till exempel: 4 => 25 %.
request [0] durationMetric.value Nummer Tid från begäran till svar. 1e7 == 1s
begäran [0] id sträng Operation id
begäran [0] namn sträng GET/POST + URL-bas. Maxlängd 250
request [0] responseCode integer HTTP-svar skickas till klienten
begäran [0] lyckades boolean Standard == (responseCode < 400)
begäran [0] url sträng Inkluderar inte värd
request [0] urlData.base sträng
request [0] urlData.hashTag sträng
request [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 fullständig (exklusive asynkrona AJAX-anrop).

Kontextvärden visar klientoperativsystem och webbläsarversion.

Sökväg Type Anteckningar
clientPerformance [0] clientProcess.value integer Tid från slutet av mottagandet av HTML-koden till att visa sidan.
clientPerformance [0] namn sträng
clientPerformance [0] networkConnection.value integer Tiden det tar att upprätta en nätverksanslutning.
clientPerformance [0] receiveRequest.value integer Tid från slutet av sändningen av begäran till att ta emot HTML-koden som svar.
clientPerformance [0] sendRequest.value integer Den tid det tar att skicka HTTP-begäran.
clientPerformance [0] total.value integer Tiden från det att du börjar 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 Type Anteckningar
visa [0] antal integer 100/(samplingsfrekvens ). Till exempel 4 => 25 %.
visa [0] durationMetric.value integer Värde som kan anges i trackPageView() eller startTrackPage() – stopTrackPage(). Inte samma som clientPerformance-värden.
visa [0] namn sträng Sidrubrik. Maxlängd 250
visa [0] url 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 Type Anteckningar
tillgänglighet [0] availabilityMetric.name sträng availability
tillgänglighet [0] availabilityMetric.value Nummer 1.0 eller 0.0
tillgänglighet [0] antal integer 100/(samplingsfrekvens ). Till exempel 4 => 25 %.
tillgänglighet [0] dataSizeMetric.name sträng
availability [0] dataSizeMetric.value integer
tillgänglighet [0] durationMetric.name sträng
tillgänglighet [0] durationMetric.value Nummer Testets varaktighet. 1e7==1s
tillgänglighet [0] meddelande sträng Feldiagnostik
tillgänglighet [0] resultat sträng Pass/Fail
tillgänglighet [0] runLocation sträng Geo-källa för http req
tillgänglighet [0] testName sträng
tillgänglighet [0] testRunId sträng
tillgänglighet [0] testTimestamp sträng

Mått

Genereras av TrackMetric().

Måttvärdet finns i context.custom.metrics[0]

Till 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 platser, rapporteras med en standardobjektstruktur. Till 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 – även om detta kan ä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 snitta flera efterföljande avläsningar innan du skickar varje måttrapport. Sedan beräknar du minimivärdet, maxvärdet, standardavvikelsen och det aggregerade värdet (summa eller medelvärde) och anger 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 föraggregeringsmå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 10000000,0 innebär 1 sekund.

Se även