Telemetrie exporteren vanuit Application Insights
Wilt u uw telemetrie langer bewaren dan de standaardretentieperiode? Of wilt u het op een gespecialiseerde manier verwerken? Continue export is ideaal voor dit doel. De gebeurtenissen die u in de Application Insights-portal ziet, kunnen in JSON-indeling worden geëxporteerd naar opslag in Azure. Van daaruit kunt u uw gegevens downloaden en de code schrijven die u nodig hebt om deze te verwerken.
Belangrijk
- Op 29 februari 2024 wordt continue export afgeschaft als onderdeel van de afschaffing van de klassieke Application Insights.
- Wanneer u migreert naar een Application Insights-resource op basis van een werkruimte, moet u diagnostische instellingen gebruiken voor het exporteren van telemetrie. Alle Application Insights-resources op basis van werkruimten moeten diagnostische instellingen gebruiken.
- Bij het exporteren van diagnostische instellingen kunnen de kosten toenemen. Zie Op diagnostische instellingen gebaseerde export voor meer informatie.
Voordat u continue export instelt, zijn er enkele alternatieven die u kunt overwegen:
- Met de knop Exporteren boven aan het tabblad metrische gegevens of zoeken kunt u tabellen en grafieken overbrengen naar een Excel-spreadsheet.
- Log Analytics biedt een krachtige querytaal voor telemetrie. Het kan ook resultaten exporteren.
- Als u uw gegevens in Power BI wilt verkennen, kunt u dat doen zonder continue export te gebruiken als u bent gemigreerd naar een resource op basis van een werkruimte.
- Met de Data Access REST API kunt u programmatisch toegang krijgen tot uw telemetrie.
- U hebt ook toegang tot setup voor continue export via PowerShell.
Na continue export kopieert u uw gegevens naar de opslag, waar deze zo lang kunnen blijven als u wilt, zijn ze nog steeds beschikbaar in Application Insights voor de gebruikelijke bewaarperiode.
Ondersteunde regio’s
Continue export wordt ondersteund in de volgende regio's:
- Azië - zuidoost
- Canada - midden
- India - centraal
- Europa - noord
- Verenigd Koninkrijk Zuid
- Australië - oost
- Japan - oost
- Korea - centraal
- Frankrijk - centraal
- Azië - oost
- VS - west
- US - centraal
- VS - oost 2
- VS - zuid-centraal
- VS - west 2
- Zuid-Afrika - noord
- VS - noord-centraal
- Brazilië - zuid
- Zwitserland - noord
- Australië - zuidoost
- Verenigd Koninkrijk West
- Duitsland - west-centraal
- Zwitserland - west
- Australië - centraal 2
- UAE - centraal
- Brazilië - zuidoost
- Australië - centraal
- VAE - noord
- Noorwegen - oost
- Japan - west
Notitie
Continue export blijft werken voor toepassingen in VS - oost en Europa - west als de export vóór 23 februari 2021 is geconfigureerd. Nieuwe regels voor continue export kunnen niet worden geconfigureerd voor toepassingen in VS - oost of Europa - west, ongeacht wanneer de toepassing is gemaakt.
Geavanceerde opslagconfiguratie voor continue export
Continue export biedt geen ondersteuning voor de volgende Azure Storage-functies of -configuraties:
- Gebruik van Azure Virtual Network/Azure Storage-firewalls met Azure Blob Storage.
- Azure Data Lake Storage Gen2.
Een continue export maken
Notitie
Een toepassing kan niet meer dan 3 TB aan gegevens per dag exporteren. Als er meer dan 3 TB per dag wordt geëxporteerd, wordt de export uitgeschakeld. Als u zonder limiet wilt exporteren, gebruikt u exporteren op basis van diagnostische instellingen.
Open in de Application Insights-resource voor uw app onder Configureren aan de linkerkant Continue export en selecteer Toevoegen.
Kies de telemetriegegevenstypen die u wilt exporteren.
Maak of selecteer een Azure Storage-account waarin u de gegevens wilt opslaan. Zie de pagina Prijzen voor meer informatie over prijsopties voor opslag.
SelecteerExportbestemming>toevoegen>Opslagaccount. Maak vervolgens een nieuwe winkel of kies een bestaande winkel.
Waarschuwing
De opslaglocatie wordt standaard ingesteld op dezelfde geografische regio als uw Application Insights-resource. Als u in een andere regio opslaat, kunnen er overdrachtskosten in rekening worden gebracht.
Maak of selecteer een container in de opslag.
Notitie
Nadat u de export hebt gemaakt, beginnen nieuw opgenomen gegevens naar Azure Blob Storage te stromen. Continue export verzendt alleen nieuwe telemetrie die is gemaakt of opgenomen nadat continue export is ingeschakeld. Alle gegevens die bestonden voordat continue export werd ingeschakeld, worden niet geëxporteerd. Er is geen ondersteunde manier om eerder gemaakte gegevens met terugwerkende kracht te exporteren met behulp van continue export.
Er kan een vertraging van ongeveer een uur zijn voordat gegevens in de opslag worden weergegeven.
Nadat de eerste export is voltooid, vindt u de volgende structuur in uw Blob Storage-container. (Deze structuur is afhankelijk van de gegevens die u verzamelt.)
Naam | Beschrijving |
---|---|
Beschikbaarheid | Rapporteert beschikbaarheidswebtests. |
Gebeurtenis | Aangepaste gebeurtenissen die worden gegenereerd door TrackEvent(). |
Uitzonderingen | Rapporteert uitzonderingen op de server en in de browser. |
Berichten | Verzonden door TrackTrace en door de logboekregistratieadapters. |
Metrische gegevens | Gegenereerd door API-aanroepen voor metrische gegevens. |
PerformanceCounters | Prestatiemeteritems verzameld door Application Insights. |
Aanvragen | Verzonden door TrackRequest. De standaardmodules gebruiken aanvragen om de reactietijd van de server te rapporteren, gemeten op de server. |
Continue export bewerken
Selecteer Continue export en selecteer het opslagaccount dat u wilt bewerken.
Continue export stoppen
Als u het exporteren wilt stoppen, selecteert u Uitschakelen. Wanneer u opnieuw Inschakelen selecteert, wordt de export opnieuw gestart met nieuwe gegevens. U krijgt geen gegevens die in de portal zijn aangekomen terwijl het exporteren was uitgeschakeld.
Als u de export definitief wilt stoppen, verwijdert u deze. Als u dit doet, worden uw gegevens niet uit de opslag verwijderd.
Kunt u een export niet toevoegen of wijzigen?
Als u exports wilt toevoegen of wijzigen, hebt u de machtiging voor Eigenaar, Inzender of Application Insights-Inzender nodig. Meer informatie over rollen.
Welke gebeurtenissen krijgt u?
De geëxporteerde gegevens zijn de onbewerkte telemetrie die we ontvangen van uw toepassing met toegevoegde locatiegegevens van het IP-adres van de client.
Gegevens die zijn verwijderd door steekproeven , worden niet opgenomen in de geëxporteerde gegevens.
Andere berekende metrische gegevens zijn niet opgenomen. We exporteren bijvoorbeeld geen gemiddeld CPU-gebruik, maar we exporteren wel de onbewerkte telemetrie op basis waarvan het gemiddelde wordt berekend.
De gegevens bevatten ook de resultaten van eventuele beschikbaarheidswebtests die u hebt ingesteld.
Notitie
Als uw toepassing veel gegevens verzendt, kan de samplingfunctie werken en slechts een fractie van de gegenereerde telemetrie verzenden. Meer informatie over steekproeven.
De gegevens inspecteren
U kunt de opslag rechtstreeks in de portal inspecteren. Selecteer Start in het menu uiterst links. Selecteer opslagaccounts bovenaan waar Azure-services wordt weergegeven. Selecteer de naam van het opslagaccount en selecteer>servicesblobs op de pagina Overzicht. Selecteer ten slotte de naam van de container.
Als u Azure Storage in Visual Studio wilt inspecteren, selecteert uCloud Explorer weergeven>. Als u deze menuopdracht niet hebt, moet u de Azure SDK installeren. Open het dialoogvenster Nieuw project , vouw Visual C#/Cloud uit en selecteer Microsoft Azure SDK voor .NET ophalen.
Wanneer u uw blobarchief opent, ziet u een container met een set blobbestanden. U ziet de URI van elk bestand dat is afgeleid van de naam van uw Application Insights-resource, de instrumentatiesleutel en het telemetrietype, de datum en de tijd. De resourcenaam is allemaal in kleine letters en de instrumentatiesleutel laat streepjes weg.
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 verbindingsreeksen om te profiteren van nieuwe mogelijkheden.
De datum en tijd zijn UTC en zijn wanneer de telemetrie in de store is geplaatst, niet het tijdstip waarop deze is gegenereerd. Als u daarom code schrijft om de gegevens te downloaden, kan deze lineair door de gegevens worden verplaatst.
Dit is de vorm van het pad:
$"{applicationName}_{instrumentationKey}/{type}/{blobDeliveryTimeUtc:yyyy-MM-dd}/{ blobDeliveryTimeUtc:HH}/{blobId}_{blobCreationTimeUtc:yyyyMMdd_HHmmss}.blob"
Waar:
blobCreationTimeUtc
is het tijdstip waarop de blob is gemaakt in de interne faseringsopslag.blobDeliveryTimeUtc
is het tijdstip waarop de blob wordt gekopieerd naar de exportbestemmingsopslag.
Gegevensindeling
De gegevens worden zo opgemaakt dat:
Elke blob is een tekstbestand dat meerdere
\n
gescheiden rijen bevat. Het bevat de telemetrie die is verwerkt gedurende een periode van ongeveer een halve minuut.Elke rij vertegenwoordigt een telemetriegegevenspunt, zoals een aanvraag of paginaweergave.
Elke rij is een niet-opgemaakt JSON-document. Als u de rijen wilt weergeven, opent u de blob in Visual Studio en selecteert u Bestand metgeavanceerde>indelingbewerken>.
Tijdsduur is in teken, waarbij 10 000 tikken = 1 ms. Deze waarden tonen bijvoorbeeld een tijd van 1 ms om een aanvraag vanuit de browser te verzenden, 3 ms om het te ontvangen en 1,8 s voor het verwerken van de pagina in de browser:
"sendRequest": {"value": 10000.0},
"receiveRequest": {"value": 30000.0},
"clientProcess": {"value": 17970000.0}
Zie Application Insights-gegevensmodel exporteren voor een gedetailleerd gegevensmodel voor de eigenschapstypen en -waarden.
De gegevens verwerken
Op kleine schaal kunt u code schrijven om uw gegevens uit elkaar te halen en in een spreadsheet te lezen. Bijvoorbeeld:
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);
}
}
}
}
Zie Een werkrol gebruiken voor een groter codevoorbeeld.
Uw oude gegevens verwijderen
U bent verantwoordelijk voor het beheren van uw opslagcapaciteit en het verwijderen van oude gegevens, indien nodig.
Uw opslagsleutel opnieuw genereren
Als u de sleutel naar uw opslag wijzigt, werkt continue export niet meer. U ziet een melding in uw Azure-account.
Selecteer het tabblad Continue export en bewerk de export. Bewerk de waardeBestemming exporteren , maar laat dezelfde opslag geselecteerd. Selecteer OK om te bevestigen.
Continue export wordt opnieuw gestart.
Voorbeelden exporteren
Zie voor exportvoorbeelden:
Op grotere schaal kunt u HDInsight Hadoop-clusters in de cloud overwegen. HDInsight biedt verschillende technologieën voor het beheren en analyseren van big data. U kunt deze gebruiken om gegevens te verwerken die zijn geëxporteerd vanuit Application Insights.
Veelgestelde vragen
Deze sectie bevat antwoorden op veelgestelde vragen.
Kan ik een grafiek eenmalig downloaden?
Dat kun je doen. Selecteer bovenaan het tabblad Gegevens exporteren.
Ik heb een export ingesteld, maar waarom zijn er geen gegevens in mijn archief?
Heeft Application Insights telemetrie ontvangen van uw app sinds u de export hebt ingesteld? U ontvangt alleen nieuwe gegevens.
Ik heb geprobeerd een export in te stellen, maar waarom heb ik de toegang geweigerd?
Als het account eigendom is van uw organisatie, moet u lid zijn van de groepen Eigenaren of Inzenders.
Kan ik rechtstreeks exporteren naar mijn eigen on-premises winkel?
Nee. Onze exportengine werkt momenteel alleen met Azure Storage.
Is er een limiet voor de hoeveelheid gegevens die u in mijn winkel plaatst?
Nee. We blijven gegevens pushen totdat u de export verwijdert. We stoppen als we de buitengrens voor Blob Storage bereiken, maar die limiet is enorm. Het is aan u om te bepalen hoeveel opslagruimte u gebruikt.
Hoeveel blobs moet ik zien in de opslag?
- Voor elk gegevenstype dat u hebt geselecteerd om te exporteren, wordt er elke minuut een nieuwe blob gemaakt, als er gegevens beschikbaar zijn.
- Voor toepassingen met veel verkeer worden extra partitie-eenheden toegewezen. In dit geval maakt elke eenheid elke minuut een blob.
Ik heb de sleutel opnieuw gegenereerd in mijn opslag of de naam van de container gewijzigd, maar waarom werkt de export niet?
Bewerk de export en selecteer het tabblad Doel exporteren . Laat dezelfde opslag geselecteerd als voorheen en selecteer OK om te bevestigen. Exporteren wordt opnieuw gestart. Als de wijziging in de afgelopen dagen is aangebracht, gaan er geen gegevens verloren.
Kan ik de export onderbreken?
Ja. Selecteer Uitschakelen.
Codevoorbeelden
- Stream Analytics-voorbeeld
- Exporteren naar SQL met behulp van Stream Analytics
- Gedetailleerde naslaginformatie over gegevensmodellen voor eigenschapstypen en -waarden
Exporteren op basis van diagnose-instellingen
Het exporteren van diagnostische instellingen heeft de voorkeur omdat het extra functies biedt:
- Azure Storage-accounts met virtuele netwerken, firewalls en privékoppelingen.
- Exporteren naar Azure Event Hubs.
Het exporteren van diagnostische instellingen verschilt verder van continue export op de volgende manieren:
- Schema bijgewerkt.
- Telemetriegegevens worden verzonden wanneer deze binnenkomen in plaats van in batches te uploaden.
Belangrijk
Er kunnen extra kosten in rekening worden gebracht vanwege een toename van het aantal aanroepen naar de bestemming, zoals een opslagaccount.
Migreren naar diagnostische instellingen exporteren:
- Schakel diagnostische instellingen in op klassieke Application Insights.
- Uw gegevensexport configureren: selecteer Diagnostische instellingen>Diagnostische instelling toevoegen vanuit uw Application Insights-resource.
- Controleer of de nieuwe gegevensexport op dezelfde is geconfigureerd als continue export
Waarschuwing
Als u diagnostische logboeken wilt opslaan in een Log Analytics-werkruimte, zijn er twee punten die u moet overwegen om dubbele gegevens in Application Insights te voorkomen:
- Het doel mag niet dezelfde Log Analytics-werkruimte zijn waarop uw Application Insights-resource is gebaseerd.
- De gebruiker van Application Insights mag geen toegang tot beide werkruimten hebben. Stel de toegangsbeheermodus van Log Analytics in op Werkruimtemachtigingen vereist. Zorg ervoor dat de gebruiker via op rollen gebaseerd toegangsbeheer van Azure alleen toegang heeft tot de Log Analytics-werkruimte waarop de Application Insights-resource is gebaseerd.
Deze stappen zijn nodig omdat Application Insights toegang heeft tot telemetrie in alle Application Insight-resources, inclusief Log Analytics-werkruimten, om zodoende volledige end-to-end-transactiebewerkingen en nauwkeurige toepassingstoewijzingen te kunnen bieden. Omdat de diagnostische instellingen dezelfde tabelnamen gebruiken, kunnen duplicaat telemetriegegevens worden weergegeven als de gebruiker toegang heeft tot meerdere resources met dezelfde gegevens.
Gegevensmodel exporteren met Application Insights
Deze tabel bevat de eigenschappen van telemetrie die vanuit de Application Insights-SDK's naar de portal worden verzonden. U ziet deze eigenschappen in de gegevensuitvoer van Continue export. Ze worden ook weergegeven in eigenschapsfilters in Metric Explorer en Diagnostische zoekopdrachten.
Punten om op te merken:
[0]
geeft in deze tabellen een punt in het pad aan waar u een index moet invoegen; Maar het is niet altijd 0.- Tijdsduur is in tiende van een microseconde, dus 10000000 == 1 seconde.
- Datums en tijden zijn UTC en worden gegeven in de ISO-indeling
yyyy-MM-DDThh:mm:ss.sssZ
Voorbeeld
// 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
}
}
}
Context
Alle typen telemetrie gaan vergezeld van een contextsectie. Niet al deze velden worden verzonden met elk gegevenspunt.
Pad | Type | Opmerkingen |
---|---|---|
context.custom.dimensions [0] | object [ ] | Sleutel-waardetekenreeksparen ingesteld door aangepaste eigenschappenparameter. Sleutel max lengte 100, waarden max lengte 1024. Meer dan 100 unieke waarden. De eigenschap kan worden doorzocht, maar kan niet worden gebruikt voor segmentatie. Maximaal 200 toetsen per ikey. |
context.custom.metrics [0] | object [ ] | Sleutel-waardeparen ingesteld door aangepaste metingenparameter en TrackMetrics. Sleutel max lengte 100, waarden kunnen numeriek zijn. |
context.data.eventTime | tekenreeks | UTC |
context.data.isSynthetic | booleaans | Aanvraag lijkt afkomstig te zijn van een bot of webtest. |
context.data.samplingRate | getal | Percentage telemetrie dat door de SDK wordt gegenereerd en dat naar de portal wordt verzonden. Bereik 0.0-100.0. |
context.device | object | Clientapparaat |
context.device.browser | tekenreeks | IE, Chrome, ... |
context.device.browserVersion | tekenreeks | Chrome 48.0, ... |
context.device.deviceModel | tekenreeks | |
context.device.deviceName | tekenreeks | |
context.device.id | tekenreeks | |
context.device.locale | tekenreeks | en-GB, de-DE, ... |
context.device.network | tekenreeks | |
context.device.oemName | tekenreeks | |
context.device.os | tekenreeks | |
context.device.osVersion | tekenreeks | Hostbesturingssyteem |
context.device.roleInstance | tekenreeks | Id van serverhost |
context.device.roleName | tekenreeks | |
context.device.screenResolution | tekenreeks | |
context.device.type | tekenreeks | Pc, browser, ... |
context.location | object | Afgeleid van clientip . |
context.location.city | tekenreeks | Afgeleid van clientip , indien bekend |
context.location.clientip | tekenreeks | Laatste achthoek wordt geanonimiseerd tot 0. |
context.location.continent | tekenreeks | |
context.location.country | tekenreeks | |
context.location.province | tekenreeks | Staat of provincie |
context.operation.id | tekenreeks | Items die hetzelfde operation id hebben, worden weergegeven als Gerelateerde items in de portal. Meestal de request id . |
context.operation.name | tekenreeks | url of aanvraagnaam |
context.operation.parentId | tekenreeks | Geneste gerelateerde items toestaan. |
context.session.id | tekenreeks | Id van een groep bewerkingen uit dezelfde bron. Een periode van 30 minuten zonder een bewerking geeft het einde van een sessie aan. |
context.session.isFirst | booleaans | |
context.user.accountAcquisitionDate | tekenreeks | |
context.user.accountId | tekenreeks | |
context.user.anonAcquisitionDate | tekenreeks | |
context.user.anonId | tekenreeks | |
context.user.authAcquisitionDate | tekenreeks | Geverifieerde gebruiker |
context.user.authId | tekenreeks | |
context.user.isAuthenticated | booleaans | |
context.user.storeRegion | tekenreeks | |
internal.data.documentVersion | tekenreeks | |
internal.data.id | tekenreeks | Unique id dat wordt toegewezen wanneer een item wordt opgenomen in Application Insights |
gebeurtenis
Aangepaste gebeurtenissen die worden gegenereerd door TrackEvent().
Pad | Type | Opmerkingen |
---|---|---|
aantal gebeurtenis [0] | geheel getal | 100/(steekproeffrequentie ). Bijvoorbeeld 4 => 25%. |
naam gebeurtenis [0] | tekenreeks | Gebeurtenisnaam. Maximale lengte 250. |
url gebeurtenis [0] | tekenreeks | |
gebeurtenis [0] urlData.base | tekenreeks | |
gebeurtenis [0] urlData.host | tekenreeks |
Uitzonderingen
Rapporteert uitzonderingen op de server en in de browser.
Pad | Type | Opmerkingen |
---|---|---|
basicException [0] assembly | tekenreeks | |
aantal basicException [0] | geheel getal | 100/(steekproeffrequentie ). Bijvoorbeeld 4 => 25%. |
basicException [0] exceptionGroup | tekenreeks | |
basicException [0] exceptionType | tekenreeks | |
basicException [0] failedUserCodeMethod | tekenreeks | |
basicException [0] failedUserCodeAssembly | tekenreeks | |
basicException [0] handledAt | tekenreeks | |
basicException [0] hasFullStack | booleaans | |
basicException [0] id |
tekenreeks | |
Methode basicException [0] | tekenreeks | |
basicException [0] bericht | tekenreeks | Uitzonderingsbericht. Maximale lengte 10k. |
basicException [0] outerExceptionMessage | tekenreeks | |
basicException [0] outerExceptionThrownAtAssembly | tekenreeks | |
basicException [0] outerExceptionThrownAtMethod | tekenreeks | |
basicException [0] outerExceptionType | tekenreeks | |
basicException [0] outerId | tekenreeks | |
basicException [0] parsedStack [0] assembly | tekenreeks | |
basicException [0] parsedStack [0] fileName | tekenreeks | |
basicException [0] parsedStack [0] level | geheel getal | |
basicException [0] geparseerdStack [0] regel | geheel getal | |
methode basicException [0] parsedStack [0] | tekenreeks | |
basicException [0] stack | tekenreeks | Maximale lengte 10k |
basicException [0] typeName | tekenreeks |
Berichten traceren
Verzonden door TrackTrace en door de logboekregistratieadapters.
Pad | Type | Opmerkingen |
---|---|---|
message [0] loggerName | tekenreeks | |
bericht [0] parameters | tekenreeks | |
bericht [0] onbewerkt | tekenreeks | Het logboekbericht, maximale lengte 10.000. |
bericht [0] ernstniveau | tekenreeks |
Externe afhankelijkheid
Verzonden door TrackDependency. Wordt gebruikt voor het rapporteren van prestaties en het gebruik van aanroepen naar afhankelijkheden op de server en AJAX-aanroepen in de browser.
Pad | Type | Opmerkingen |
---|---|---|
remoteDependency [0] asynchroon | booleaans | |
remoteDependency [0] baseName | tekenreeks | |
remoteDependency [0] commandName | tekenreeks | Bijvoorbeeld 'home/index' |
aantal remoteDependency [0] | geheel getal | 100/(steekproeffrequentie ). Bijvoorbeeld 4 => 25%. |
remoteDependency [0] dependencyTypeName | tekenreeks | HTTP, SQL, ... |
remoteDependency [0] durationMetric.value | getal | Tijd van aanroep tot voltooiing van het antwoord per afhankelijkheid |
remoteDependency [0] id |
tekenreeks | |
naam remoteDependency [0] | tekenreeks | Url. Maximale lengte 250. |
remoteDependency [0] resultCode | tekenreeks | van HTTP-afhankelijkheid |
remoteDependency [0] geslaagd | booleaans | |
remoteDependency [0] type | tekenreeks | Http, Sql,... |
url remoteDependency [0] | tekenreeks | Maximale lengte 2000 |
remoteDependency [0] urlData.base | tekenreeks | Maximale lengte 2000 |
remoteDependency [0] urlData.hashTag | tekenreeks | |
remoteDependency [0] urlData.host | tekenreeks | Maximale lengte 200 |
Aanvragen
Verzonden door TrackRequest. De standaardmodules gebruiken dit om de reactietijd van de server te rapporteert, gemeten op de server.
Pad | Type | Opmerkingen |
---|---|---|
aantal aanvragen [0] | geheel getal | 100/(steekproeffrequentie ). Bijvoorbeeld: 4 => 25%. |
request [0] durationMetric.value | getal | Tijd vanaf het moment dat de aanvraag is binnengekomen om te reageren. 1e7 == 1s |
aanvraag [0] id |
tekenreeks | Operation id |
naam van aanvraag [0] | tekenreeks | GET/POST + URL-basis. Maximale lengte 250 |
request [0] responseCode | geheel getal | HTTP-antwoord verzonden naar client |
aanvraag [0] geslaagd | booleaans | Standaard == (responseCode < 400) |
aanvraag [0] URL | tekenreeks | Host niet inbegrepen |
aanvraag [0] urlData.base | tekenreeks | |
aanvraag [0] urlData.hashTag | tekenreeks | |
aanvraag [0] urlData.host | tekenreeks |
Prestaties van paginaweergave
Verzonden door de browser. Meet de tijd voor het verwerken van een pagina, van de gebruiker die de aanvraag start om voltooid weer te geven (met uitzondering van asynchrone AJAX-aanroepen).
Contextwaarden geven de versie van het clientbesturingssysteem en de browser weer.
Pad | Type | Opmerkingen |
---|---|---|
clientPerformance [0] clientProcess.value | geheel getal | Tijd vanaf het einde van het ontvangen van de HTML-code tot het weergeven van de pagina. |
naam clientPerformance [0] | tekenreeks | |
clientPerformance [0] networkConnection.value | geheel getal | Tijd die nodig is om een netwerkverbinding tot stand te brengen. |
clientPerformance [0] receiveRequest.value | geheel getal | Tijd vanaf het einde van het verzenden van de aanvraag tot het ontvangen van de HTML als antwoord. |
clientPerformance [0] sendRequest.value | geheel getal | Tijd vanaf het moment dat de HTTP-aanvraag is verzonden. |
clientPerformance [0] total.value | geheel getal | Tijd vanaf het begin van het verzenden van de aanvraag tot het weergeven van de pagina. |
clientPerformance [0] URL | tekenreeks | URL van deze aanvraag |
clientPerformance [0] urlData.base | tekenreeks | |
clientPerformance [0] urlData.hashTag | tekenreeks | |
clientPerformance [0] urlData.host | tekenreeks | |
clientPerformance [0] urlData.protocol | tekenreeks |
Paginaweergaven
Verzonden door trackPageView() of stopTrackPage
Pad | Type | Opmerkingen |
---|---|---|
aantal weergaven [0] | geheel getal | 100/(steekproeffrequentie ). Bijvoorbeeld 4 => 25%. |
view [0] durationMetric.value | geheel getal | Waarde optioneel ingesteld in trackPageView() of door startTrackPage() - stopTrackPage(). Niet hetzelfde als clientPerformance-waarden. |
weergavenaam [0] | tekenreeks | Paginatitel. Maximale lengte 250 |
URL weergeven [0] | tekenreeks | |
view [0] urlData.base | tekenreeks | |
view [0] urlData.hashTag | tekenreeks | |
view [0] urlData.host | tekenreeks |
Beschikbaarheid
Rapporteert webtests voor beschikbaarheid.
Pad | Type | Opmerkingen |
---|---|---|
beschikbaarheid [0] availabilityMetric.name | tekenreeks | availability |
availability [0] availabilityMetric.value | getal | 1.0 of 0.0 |
beschikbaarheid [0] aantal | geheel getal | 100/(steekproeffrequentie ). Bijvoorbeeld 4 => 25%. |
beschikbaarheid [0] dataSizeMetric.name | tekenreeks | |
availability [0] dataSizeMetric.value | geheel getal | |
beschikbaarheid [0] durationMetric.name | tekenreeks | |
availability [0] durationMetric.value | getal | Duur van de test. 1e7==1s |
beschikbaarheidsbericht [0] | tekenreeks | Foutdiagnose |
resultaat beschikbaarheid [0] | tekenreeks | Geslaagd/mislukt |
beschikbaarheid [0] runLocation | tekenreeks | Geo-bron van http-req |
availability [0] testName | tekenreeks | |
beschikbaarheid [0] testRunId | tekenreeks | |
beschikbaarheid [0] testTimestamp | tekenreeks |
Metrische gegevens
Gegenereerd door TrackMetric().
De metrische waarde wordt gevonden in context.custom.metrics[0]
Bijvoorbeeld:
{
"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
}
}
]
}
}
}
Over metrische waarden
Metrische waarden, zowel in metrische rapporten als elders, worden gerapporteerd met een standaardobjectstructuur. Bijvoorbeeld:
"durationMetric": {
"name": "contoso.org",
"type": "Aggregation",
"value": 468.71603053650279,
"count": 1.0,
"min": 468.71603053650279,
"max": 468.71603053650279,
"stdDev": 0.0,
"sampledValue": 468.71603053650279
}
Op dit moment, hoewel dit in de toekomst kan veranderen, in alle waarden die worden gerapporteerd vanuit de standaard SDK-modules, count==1
en alleen de name
velden en value
zijn nuttig. Het enige geval waarin ze anders zijn, is als u uw eigen TrackMetric-aanroepen schrijft waarin u de andere parameters instelt.
Het doel van de andere velden is om metrische gegevens samen te voegen in de SDK, om het verkeer naar de portal te verminderen. U kunt bijvoorbeeld het gemiddelde van meerdere opeenvolgende metingen berekenen voordat u elk metrische rapport verzendt. Vervolgens berekent u de minimale, maximale, standaarddeviatie en aggregatiewaarde (som of gemiddelde) en stelt u het aantal in op het aantal metingen dat door het rapport wordt vertegenwoordigd.
In de bovenstaande tabellen hebben we de zelden gebruikte velden count, min, max, stdDev en sampledValue weggelaten.
In plaats van metrische gegevens vooraf te aggregeren, kunt u steekproeven gebruiken als u het volume van telemetrie wilt verminderen.
Duur
Tenzij anders vermeld, worden duurs weergegeven in tienden van een microseconde, zodat 10000000,0 1 seconde betekent.