Condividi tramite


Modello di dati di telemetria di Application Insights

Application Insights invia dati di telemetria dall'applicazione Web al portale di Azure per fornire informazioni dettagliate sulle prestazioni e sull'utilizzo dell'applicazione e dell'infrastruttura. Per facilitare la comprensione e l'organizzazione dei dati di telemetria, la categorizzazione viene suddivisa in tipi distinti.

Il modello di dati di telemetria è standardizzato, consentendo di creare monitoraggio indipendente dalla piattaforma e dal linguaggio. Microsoft si impegna a mantenere il modello semplice ed essenziale in modo da supportare gli scenari essenziali e da consentire l'estensione dello schema per un uso avanzato.

I dati raccolti da Application Insights modellano questo tipico modello di esecuzione dell'applicazione:

Diagramma che mostra il modello di dati di telemetria di Application Insights.

1availabilityResults non sono disponibili per impostazione predefinita e richiedono la configurazione dei test di disponibilità.
2customEvents e customMetrics sono disponibili solo con strumentazione personalizzata.

Nota

Application Insights archivia i log nella traces tabella per motivi legacy. Gli intervalli per le tracce distribuite vengono archiviati nelle requests tabelle e dependencies . Si prevede di risolvere questo problema in una versione futura per evitare confusione.

Tipi di telemetria

Per monitorare l'esecuzione dell'applicazione vengono usati i tipi di telemetria seguenti. La distribuzione OpenTelemetry di Monitoraggio di Azure e JavaScript SDK di Application Insights raccolgono:

Tipo di telemetria Nome della tabella
(Approfondimenti sull'Applicazione)
Nome della tabella
(Analisi dei Log)
Descrizione
Disponibilità availabilityResults AppAvailabilityResults Monitora la disponibilità e la velocità di risposta dell'applicazione inviando richieste Web a intervalli regolari e avvisando l'utente se l'applicazione non risponde o se il tempo di risposta è troppo lento.
Temporizzazione del browser browserTimings AppBrowserTimings Misura le prestazioni delle pagine Web, inclusi i tempi di caricamento delle pagine e le durate di rete.
Dipendenza dependencies AppDependencies Tiene traccia delle chiamate dall'applicazione a un servizio esterno o a un'archiviazione, ad esempio un'API REST o un database SQL, e misura la durata e l'esito positivo di queste chiamate.
Evento customEvents AppEvents In genere usato per acquisire interazioni utente e altre occorrenze significative all'interno dell'applicazione, ad esempio clic sui pulsanti o checkout degli ordini, per analizzare i modelli di utilizzo.
Eccezione exceptions AppExceptions Acquisisce informazioni sugli errori cruciali per la risoluzione dei problemi e la comprensione degli errori.
Metrica performanceCounters

customMetrics
AppPerformanceCounters

AppMetrics
I contatori delle prestazioni forniscono dati numerici su vari aspetti delle prestazioni dell'applicazione e del sistema, ad esempio l'utilizzo della CPU e il consumo di memoria.

Inoltre, le metriche personalizzate consentono di definire e tenere traccia di misurazioni specifiche univoche per l'applicazione, offrendo flessibilità per monitorare gli indicatori di prestazioni personalizzati.
Visualizzazione pagina pageViews AppPageViews Tiene traccia delle pagine visualizzate dagli utenti, fornendo informazioni dettagliate sulla navigazione e l'engagement degli utenti all'interno dell'applicazione.
Richiedi requests AppRequests Registra le richieste ricevute dall'applicazione, fornendo dettagli quali ID operazione, durata e stato di esito positivo o negativo.
Traccia traces AppTraces Registra eventi specifici dell'applicazione, ad esempio messaggi di diagnostica personalizzati o istruzioni di traccia, utili per il debug e il monitoraggio del comportamento dell'applicazione nel tempo.

Importante

È possibile eseguire query sui dati di telemetria dell'applicazione sia da Application Insights che da Log Analytics (scelta consigliata), ma i nomi di tabella e di campo sono diversi. Questa distinzione mantiene la compatibilità con le versioni precedenti, ad esempio per garantire che i dashboard dei clienti con query personalizzate create prima della convenzione di denominazione di Log Analytics continuino a funzionare correttamente.

Per confrontare i nomi dei campi nel portale di Azure, aprireLog di >, eseguire una query e copiare l'oggetto Id di un elemento di telemetria, ad esempio 1234a5b6c7de8f90. Aprire quindi una nuova scheda nel browser, passare a Log Analytics>Log, passare alla modalità KQL ed eseguire la query:

AppDependencies // Notice that table names are also different.
| where Id == "1234a5b6c7de8f90"

Espandere entrambi gli elementi di telemetria selezionando la freccia di espansione a sinistra di ogni riga per visualizzare tutte le relative proprietà.

Ogni elemento di telemetria può includere informazioni di contesto , ad esempio la versione dell'applicazione o l'ID sessione utente. Il contesto è costituito da un set di campi fortemente tipizzato che consentono scenari di analisi diversi.

Ad esempio, quando la versione dell'applicazione viene inizializzata correttamente, Application Insights può rilevare nuovi modelli nel comportamento dell'applicazione correlato alla ridistribuzione. Analogamente, è possibile usare l'ID sessione per valutare l'impatto di interruzioni o problemi sugli utenti. Calcolando il numero di ID sessione univoci associati a dipendenze non riuscite, tracce di errore o eccezioni critiche, si ottiene un quadro più chiaro dell'impatto dell'utente.

Il modello di telemetria di Application Insights supporta anche la correlazione degli elementi di telemetria alle operazioni a cui appartengono. Ad esempio, se una richiesta attiva una chiamata a un database SQL, sia la richiesta che la chiamata di dipendenza possono includere dati di diagnostica e essere collegati tramite un contesto di correlazione condivisa, consentendo di tracciare il flusso completo dell'operazione.

Questo articolo illustra i campi specifici di ogni tipo di telemetria. Per visualizzare l'elenco completo dei campi disponibili (inclusi i campi di contesto) per qualsiasi tipo di telemetria, seguire il collegamento fornito sotto ogni tabella pertinente.

Dati di telemetria della disponibilità

La telemetria di disponibilità prevede il monitoraggio sintetico, in cui i test simulano le interazioni utente per verificare che l'applicazione sia disponibile e reattiva. È consigliabile configurare test di disponibilità standard per monitorare la disponibilità dell'applicazione da diversi punti in tutto il mondo e inviare informazioni di test personalizzate ad Application Insights.

Campi specifici della disponibilità:

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Descrizione
id Id Identificatore univoco di un risultato del test di disponibilità, usato per la correlazione tra singole esecuzioni di test che consentono di tracciare errori o modelli specifici nel tempo. Per altre informazioni, vedere Correlazione dei dati di telemetria in Application Insights.
name Name Nome di un test di disponibilità. Viene definito durante la creazione del test, ad esempio "Test ping della home page".
location Location La posizione geografica o l'area del data center da cui è stato eseguito un test di disponibilità, ad esempio Stati Uniti occidentali, Europa settentrionale. Consente di identificare interruzioni a livello di area o problemi di latenza.
success Success Questo campo indica se un test di disponibilità ha avuto esito positivo o negativo. Si tratta di un valore booleano in cui true indica che il test è riuscito e false significa che non è riuscito.
message Message Messaggio descrittivo con i dettagli sul risultato del test. Spesso contiene i dettagli dell'eccezione o le risposte di errore.
duration Duration Quantità di tempo impiegato dal test di disponibilità per l'esecuzione. Consente di misurare le prestazioni e identificare i problemi relativi al tempo di risposta. La durata viene in genere misurata in millisecondi.

Per un elenco di tutti i campi disponibili, vedere AppAvailabilityResults.

Telemetria dei tempi di caricamento del browser

I browser espongono le misurazioni per le azioni di caricamento delle pagine con l'API Prestazioni. Application Insights semplifica queste misurazioni consolidando i tempi correlati nelle metriche del browser standard.

Campi specifici dei tempi del browser:

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Descrizione
networkDuration NetworkDurationMs Il client raggiunge il DNS per risolvere il nome host del sito Web e DNS risponde con l'indirizzo IP.

Il client crea la connessione TCP e poi un handshake TLS con il server web.
sendDuration SendDurationMs Il client invia il payload della richiesta, attende che il server eseseguono la richiesta e riceva il primo pacchetto di risposta.
receiveDuration ReceiveDurationMs Il client riceve il resto dei byte del payload della risposta dal server Web.
processingDuration ProcessingDurationMs Il client ha ora un payload di risposta completo e deve eseguire il rendering del contenuto nel browser e caricare il DOM.
totalDuration TotalDurationMs La somma di tutti i tempi del browser.

Per un elenco di tutti i campi disponibili, vedere AppBrowserTimings.

Dati di telemetria della dipendenza

Un elemento di telemetria delle dipendenze rappresenta un'interazione del componente monitorato con un componente remoto, ad esempio SQL o un endpoint HTTP.

Campi specifici delle dipendenze:

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Descrizione
id Id Identificatore univoco di un'istanza di chiamata di dipendenza, usata per la correlazione con l'elemento di telemetria della richiesta corrispondente a questa chiamata di dipendenza. Per altre informazioni, vedere Correlazione dei dati di telemetria in Application Insights.
target Target Sito di destinazione di una chiamata di dipendenza. Esempi sono nome del server, indirizzo host. Per altre informazioni, vedere Correlazione dei dati di telemetria in Application Insights.
type DependencyType Nome del tipo di dipendenza. Valore di cardinalità basso per un raggruppamento logico delle dipendenze e l'interpretazione di altri campi come commandName e resultCode. Esempi sono SQL, tabelle di Azure e HTTP.
name Name Nome del comando avviato con questa chiamata di dipendenza. Ha un valore di cardinalità basso. Esempi sono il nome della stored procedure e il modello di percorso URL.
data Data Comando avviato da questa chiamata di dipendenza. Esempi sono l'istruzione SQL e l'URL HTTP con tutti i parametri di query.
success Success Questo campo indica se una chiamata ha avuto esito positivo o negativo. Si tratta di un valore booleano in cui significa che true la chiamata ha avuto esito positivo e false significa che non è riuscita.
resultCode ResultCode Codice del risultato di una chiamata di dipendenza. Esempi sono il codice di errore SQL e il codice di stato HTTP.
duration DurationMs La durata della richiesta è nel formato DD.HH:MM:SS.MMMMMM. Deve essere inferiore a 1000 giorni.

Per un elenco di tutti i campi disponibili, vedere AppDependencies.

Telemetria degli eventi

È possibile creare elementi di telemetria degli eventi per rappresentare un evento che si è verificato nell'applicazione. Si tratta in genere di un'interazione dell'utente, ad esempio il clic su un pulsante o un completamento della transazione di un ordine. Può inoltre essere un evento del ciclo di vita dell'applicazione come l'inizializzazione o un aggiornamento della configurazione.

Per ulteriori informazioni sulla creazione di telemetria degli eventi personalizzati, vedere Aggiungere e modificare OpenTelemetry di Azure Monitor per le applicazioni .NET, Java, Node.jse Python.

Campi specifici dell'evento:

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Descrizione
name Name Per consentire il raggruppamento corretto e le metriche utili, limitare l'applicazione in modo che generi alcuni nomi di eventi separati. Ad esempio, non usare un nome distinto per ogni istanza generata di un evento.

Per un elenco di tutti i campi disponibili, vedere AppEvents.

Telemetria delle eccezioni

Un elemento di telemetria delle eccezioni rappresenta un'eccezione gestita o non gestita che si è verificata durante l'esecuzione dell'applicazione monitorata.

Campi specifici dell'eccezione:

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Descrizione
problemId ProblemId Identifica la posizione in cui è stata generata l'eccezione nel codice. Viene usato per il raggruppamento delle eccezioni. In genere è una combinazione di un tipo di eccezione e una funzione dallo stack di chiamate.
type ExceptionType Tipo specifico di eccezione che si è verificato. Questo include in genere lo spazio dei nomi e il nome della classe, ad esempio System.NullReferenceException o System.InvalidOperationException.
assembly Assembly L'assembly in cui è stata generata l'eccezione. Ciò è utile per individuare il componente dell'applicazione responsabile dell'eccezione.
method Method Nome del metodo all'interno dell'assembly in cui è stata generata l'eccezione. In questo modo vengono fornite informazioni contestuali sulla posizione in cui si è verificato l'errore nel codice.
outerType OuterType Tipo dell'eccezione esterna (wrapping), se l'eccezione corrente è annidata all'interno di un'altra eccezione. Ciò è utile per comprendere il contesto in cui si è verificata l'eccezione interna e può essere utile per tracciare la sequenza di errori.
outerMessage OuterMessage Questo messaggio fornisce una spiegazione leggibile dell'eccezione esterna e può essere utile per comprendere il problema più ampio.
outerAssembly OuterAssembly L'assemblaggio in cui ha avuto origine l'eccezione esterna.
outerMethod OuterMethod Metodo dell'eccezione esterna. Vengono fornite informazioni dettagliate sul punto di errore all'interno dell'eccezione esterna.
severityLevel SeverityLevel Il livello di gravità della traccia può essere uno dei valori seguenti: Verbose, Information, WarningError, o Critical.
details Details Contiene informazioni sulle eccezioni, ad esempio il messaggio di eccezione e lo stack di chiamate.

Per un elenco di tutti i campi disponibili, vedere AppExceptions.

Telemetria metriche

I vari tipi di telemetria metrica supportati da Application Insights sono due:

  • Una singola misura ha un nome e un valore.
  • Una metrica preaggregata accetta più misurazioni in un periodo di aggregazione di 1 minuto.

Contatori delle prestazioni

I contatori delle prestazioni sono sempre metriche di misura singola con name e value, ma vengono forniti anche i campi aggiuntivi category, counter e, per le applicazioni Windows, instance.

Campi specifici del contatore delle prestazioni:

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Descrizione
name Name Nome della metrica che si vuole visualizzare nel portale di Application Insights.
value Value Valore singolo per la misurazione. È la somma delle singole misure per l'aggregazione.
category Category Rappresenta un gruppo di contatori delle prestazioni correlati , ad esempio Process.
counter Counter Specifica la particolare metrica delle prestazioni misurata all'interno di una categoria , ad esempio IO Data Bytes/sec.
instance Instance Identifica un'occorrenza specifica di un contatore all'interno di una categoria , ad esempio ??APP_WIN32_PROC??.

Per un elenco di tutti i campi disponibili, vedere AppPerformanceCounters.

Per altre informazioni sulle metriche, vedere Metriche in Application Insights. Per altre informazioni sull'API REST metriche, vedere Metriche - Get.

Metriche dei contatori di sistema e processo

Nome .NET Descrizione
\Processor(_Total)\% Processor Time CPU totale della macchina.
\Memory\Available Bytes Mostra la quantità di memoria fisica, espressa in byte, disponibile per l'esecuzione dei processi nel computer. Viene calcolata sommando la quantità di spazio negli elenchi di memoria azzerata, libera e in standby. La memoria libera è pronta per l'uso. La memoria con zero è costituita da pagine di memoria riempite con zeri per impedire ai processi successivi di visualizzare i dati usati da un processo precedente. La memoria di standby è la memoria che è stata rimossa dal working set di un processo (la relativa memoria fisica) instradata al disco, ma è ancora disponibile per essere richiamata. Vedere Oggetto Memoria.
\Process(??APP_WIN32_PROC??)\% Processor Time CPU del processo che ospita l'applicazione.
\Process(??APP_WIN32_PROC??)\Private Bytes Memoria usata dal processo che ospita l'applicazione.
\Process(??APP_WIN32_PROC??)\IO Data Bytes/sec Frequenza delle operazioni I/O eseguite dal processo che ospita l'applicazione.
\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests/Sec Frequenza delle richieste elaborate da un'applicazione.
\.NET CLR Exceptions(??APP_CLR_PROC??)\# of Exceps Thrown / sec Frequenza delle eccezioni generate da un'applicazione.
\ASP.NET Applications(??APP_W3SVC_PROC??)\Request Execution Time Tempo di esecuzione medio delle richieste.
\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests In Application Queue Numero di richieste in attesa dell'elaborazione in una coda.

Proprietà personalizzate

La metrica con la proprietà personalizzata CustomPerfCounter impostata su true indicano che rappresentano il contatore delle prestazioni di Windows. Queste metriche vengono inserite nella performanceCounters tabella, non in customMetrics. Viene analizzato anche il nome di queste metriche per estrarre i nomi di categoria, contatore e istanza.

Metriche personalizzate

Le metriche personalizzate sono indicatori di prestazioni o metriche specifiche dell'azienda definite e raccolte per ottenere informazioni dettagliate non coperte dalle metriche standard. Per altre informazioni sulle metriche personalizzate, vedere Metriche personalizzate in Monitoraggio di Azure (anteprima).

Campi personalizzati specifici della metrica:

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Singola misura Metrica preaggregata
name Name Questo campo è il nome della metrica che si vuole visualizzare nel portale di Application Insights e nell'interfaccia utente.
value Value Questo campo è il singolo valore per la misurazione. È la somma delle singole misure per l'aggregazione. Per una metrica preaggregata, Value è uguale a Sum.
Max Max Per una singola metrica di misurazione, Max è uguale a Value. Questo campo è il valore massimo della metrica aggregata. Non deve essere impostato per una misura.
Min Min Per una singola metrica di misurazione, Min è uguale a Value. Questo campo è il valore minimo della metrica aggregata. Non deve essere impostato per una misura.
Sum Sum Per una singola metrica di misurazione, Sum è uguale a Value. Somma di tutti i valori della metrica aggregata. Non deve essere impostato per una misura.
Count Count Per una singola metrica di misurazione, Count è 1. Numero di misurazioni in un periodo di aggregazione di 1 minuto. Non deve essere impostato per una misura.

Per un elenco di tutti i campi disponibili, vedere AppMetrics.

Nota

Per calcolare la media, dividere Sum per Count.

Telemetria delle visualizzazioni delle pagine

I dati di telemetria della visualizzazione pagina vengono registrati quando un utente dell'applicazione apre una nuova pagina di un'applicazione monitorata. Page in questo contesto è un'unità logica definita dallo sviluppatore per essere una scheda dell'applicazione o una schermata e non è necessariamente correlata a un caricamento della pagina Web del browser o a un'azione di aggiornamento.

Questa distinzione può essere ulteriormente compresa nel contesto delle applicazioni a pagina singola, in cui il passaggio tra le pagine non è associato alle azioni della pagina del browser. pageViews.duration è il tempo necessario per l'applicazione per presentare la pagina all'utente.

Campi specifici della visualizzazione pagina:

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Descrizione
name Name Nome della pagina visualizzata dall'utente , ad esempio "Home" o "Shopping Cart".
url Url URL completo della pagina visualizzata. Questo campo è fondamentale per l'analisi del traffico e del comportamento degli utenti nell'applicazione.
duration DurationMs La durata PageView proviene dall'interfaccia di temporizzazione delle prestazioni del browser, PerformanceNavigationTiming.duration.

Se PerformanceNavigationTiming è disponibile, viene utilizzata tale durata. In caso contrario, viene usata l'interfaccia deprecataPerformanceTiming e viene calcolato il delta tra NavigationStart e LoadEventEnd .

Lo sviluppatore specifica un valore di durata quando si registrano eventi personalizzati PageView usando la chiamata API trackPageView.

Per un elenco di tutti i campi disponibili, vedere AppPageViews.

Nota

  • Per impostazione predefinita, JavaScript SDK di Application Insights registra eventi PageView singoli per ogni azione di caricamento della pagina Web del browser, con pageViews.duration popolato in base ai tempi del browser. Gli sviluppatori possono estendere il rilevamento aggiuntivo degli PageView eventi usando la chiamata API trackPageView.

  • La conservazione dei log predefinita è di 30 giorni. Se si desidera visualizzare PageView le statistiche per un periodo di tempo più lungo, è necessario modificare l'impostazione.

Richiedere dati di telemetria

I dati di telemetria delle richieste rappresentano informazioni correlate alle richieste HTTP in ingresso all'applicazione. Questo tipo di telemetria consente di monitorare le prestazioni e il successo dei servizi basati sul Web dell'applicazione. Un elemento di telemetria della richiesta rappresenta la sequenza logica di esecuzione attivata da una richiesta esterna all'applicazione. Ogni esecuzione di richiesta è identificata da un id univoco e un url che contiene tutti i parametri di esecuzione.

È possibile raggruppare le richieste in base al name logico e definire il source della richiesta. L'esecuzione del codice può restituire un campo success o fail e ha un campo duration specificato. È possibile raggruppare ulteriormente le esecuzioni riuscite e non riuscite usando resultCode. L'ora di inizio della telemetria delle richieste è definita a livello di busta. I dati di telemetria delle richieste supportano il modello di estendibilità standard tramite custom properties e measurements.

Campi specifici della richiesta:

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Descrizione
id Id Identificatore univoco di un'istanza di chiamata di richiesta, usato per la correlazione tra la richiesta e altri elementi di telemetria. L'ID deve essere globalmente univoco. Per altre informazioni, vedere Correlazione dei dati di telemetria in Application Insights.
source Source L'origine è l'origine della richiesta. Gli esempi sono la stringa di connessione o l'indirizzo IP del chiamante. Per altre informazioni, vedere Correlazione dei dati di telemetria in Application Insights.
name Name Questo campo è il nome della richiesta e rappresenta il percorso del codice impiegato per elaborare la richiesta. Un valore di cardinalità basso consente un raggruppamento migliore delle richieste. Per le richieste HTTP, rappresenta il metodo HTTP e un modello di percorso URL, ad esempio GET /values/{id}, senza il valore di id effettivo.
L'SDK Web Application Insights invia un nome di richiesta "così com'è" riguardo a maiuscole/minuscole. Il raggruppamento nell'interfaccia utente distingue maiuscole e minuscole, pertanto GET /Home/Index viene considerato separatamente da GET /home/INDEX, anche se spesso risultano nella stessa esecuzione dell'azione e del controller. Il motivo è che gli URL in generale fanno distinzione tra maiuscole e minuscole. Potrebbe essere necessario verificare se tutti gli errori 404 si sono verificati per gli URL digitati in lettere maiuscole.
url Url L'URL è l'URL della richiesta con tutti i parametri di stringa di query.
success Success L'esito positivo indica se una chiamata ha avuto esito positivo o negativo. Campo obbligatorio. Quando una richiesta non è impostata in modo esplicito su false, viene considerata corretta. Se un'eccezione o il codice del risultato dell'errore restituito ha interrotto l'operazione, impostare questo valore su false.

Per le applicazioni Web, Application Insights definisce una richiesta come riuscita quando il codice di risposta è minore di 400 o uguale a 401. Esistono tuttavia casi in cui questo mapping predefinito non corrisponde alla semantica dell'applicazione.

Il codice di risposta 404 può indicare "Nessun record" e quindi fare parte del normale flusso. Potrebbe anche indicare un collegamento interrotto. Nel caso di collegamenti interrotti, è possibile implementare una logica più avanzata. È possibile contrassegnare i collegamenti interrotti come errori solo se tali collegamenti vengono individuati nello stesso sito analizzando il riferimento dell'URL. Oppure è possibile contrassegnarli come errori anche quando l'accesso viene effettuato dall'applicazione per dispositivi mobili dell'azienda. Analogamente, i codici 301 e 302 indicano un errore quando si accede dal client che non supporta il reindirizzamento.

Il codice 206 di contenuto parzialmente accettato può indicare un errore di una richiesta globale. Un endpoint di Application Insights riceve, ad esempio, un batch di elementi di telemetria come una singola richiesta. Restituisce 206 quando alcuni elementi del batch non sono stati elaborati correttamente. Un aumento della frequenza di 206 indica un problema che richiede attenzione. Si applica una logica simile a 207 Multi-Status, dove il risultato positivo potrebbe essere il peggiore tra i diversi codici di risposta.
resultCode ResultCode Il codice di risposta è il risultato di un'esecuzione della richiesta. È il codice di stato HTTP per le richieste HTTP. Potrebbe trattarsi di un valore HRESULT o di un tipo di eccezione per altri tipi di richiesta.
duration DurationMs La durata della richiesta viene formattata come DD.HH:MM:SS.MMMMMM. Deve essere un valore positivo e inferiore a 1000 giorni. Questo campo è obbligatorio in quanto la telemetria delle richieste rappresenta l'operazione con un inizio e una fine.

Per un elenco di tutti i campi disponibili, vedere AppRequests.

Telemetria di traccia

I dati di telemetria della traccia rappresentano istruzioni di traccia di tipo printf, che vengono ricercate nel testo. Log4Net, NLog e altre voci del file di log basato su testo vengono convertite in istanze di questo tipo. La traccia non dispone di misure come l'estendibilità.

Campi specifici della traccia:

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Descrizione
message Message Messaggio di traccia.
severityLevel SeverityLevel Livello di gravità della traccia.

Per un elenco di tutti i campi disponibili, vedere AppTraces.

Nota

I valori per severityLevel sono enumerati e specifici della piattaforma.

Proprietà e misurazioni personalizzate

Proprietà personalizzate

Raccolta nome-valore di proprietà personalizzate: questa raccolta viene utilizzata per estendere i dati di telemetria standard con dimensioni personalizzate. Alcuni esempi sono lo slot di distribuzione che ha generato dati di telemetria o la proprietà specifica degli elementi di telemetria come il numero d'ordine.

  • Lunghezza massima della chiave: 150
  • Lunghezza massima del valore: 8.192

Misure personalizzate

Raccolta di misurazioni personalizzate: Utilizzare questa raccolta per segnalare le misurazioni denominate associate all'elemento di telemetria. Casi d'uso tipici sono i seguenti:

  • La dimensioni del payload dei dati di telemetria di dipendenza.
  • Il numero di elementi in coda elaborati dalla telemetria delle richieste.
  • Il tempo impiegato da un cliente per terminare il passaggio della procedura guidata completando i dati di telemetria degli eventi.

È possibile eseguire query sulle misure personalizzate in Analisi applicazione:

customEvents
| where customMeasurements != ""
| summarize avg(todouble(customMeasurements["Completion Time"]) * itemCount)

Nota

  • Le misure personalizzate sono associate all'elemento di telemetria a cui appartengono Sono soggette al campionamento con l'elemento di telemetria contenente tali misurazioni. Per tenere traccia di una misura con un valore indipendente da altri tipi di telemetria, usare i dati di telemetria delle metriche.
  • Non usare valori stringa per le misurazioni personalizzate. Sono supportati solo i valori numerici.

Lunghezza massima della chiave: 150

Contesto

Ogni elemento di telemetria può contenere campi di contesto fortemente tipizzati. Ogni campo consente uno specifico scenario di monitoraggio. Usare la raccolta di proprietà personalizzate per archiviare informazioni contestuali personalizzate o specifiche dell'applicazione.

Nome del campo
(Approfondimenti sull'Applicazione)
Nome del campo
(Analisi dei Log)
Descrizione
account_ID user_AccountId L'ID account, nelle applicazioni multi-tenant, è l'ID o il nome dell'account tenant con cui l'utente sta agendo. Viene utilizzato per una segmentazione più dettagliata degli utenti quando l'identificativo utente semplice e l'identificativo utente autenticato non sono sufficienti. Alcuni esempi possono essere un ID sottoscrizione per il portale di Azure o il nome del blog per una piattaforma di blog.
application_Version AppVersion Le informazioni contenute nei campi di contesto dell'applicazione si riferiscono sempre all'applicazione che invia i dati di telemetria. La versione dell'applicazione viene usata per analizzare i cambiamenti nei trend di comportamento dell'applicazione e la correlazione con le distribuzioni.
appId ResourceGUID Identificatore univoco per la risorsa di Application Insights per distinguere i dati di telemetria da applicazioni diverse.
appName Non disponibile In Application Insights, appName è uguale a _ResourceId.
client_Browser ClientBrowser Nome del Web browser utilizzato dal client.
client_City ClientCity Città in cui si trovava il client quando sono stati raccolti i dati di telemetria (in base alla georilevazione IP).
client_CountryOrRegion ClientCountryOrRegion Paese o area geografica in cui si trovava il client quando sono stati raccolti i dati di telemetria (in base alla georilevazione IP).
client_IP ClientIP Indirizzo IP del dispositivo client. Sono supportati i protocolli IPv4 e IPv6. Quando i dati di telemetria vengono inviati da un servizio, il contesto della posizione si riferisce all'utente che ha avviato l'operazione del servizio. Application Insights estrae le informazioni sulla posizione geografica dall'IP del client e quindi la tronca. L'IP client da solo non può quindi essere usato come informazione personale dell'utente.
client_OS ClientOS Indica il sistema operativo del client che ha generato i dati di telemetria.
client_StateorProvince ClientStateOrProvince Stato o provincia in cui si trovava il client quando sono stati raccolti i dati di telemetria (in base alla georilevazione IP).
client_Type ClientType Descrive il tipo di dispositivo client che ha inviato i dati di telemetria, Browser ad esempio o PC.
cloud_RoleInstance AppRoleInstance Nome dell'istanza in cui è in esecuzione l'applicazione. Ad esempio, è il nome del computer per l'ambiente locale o il nome dell'istanza per Azure.
cloud_RoleName AppRoleName Nome del ruolo di cui fa parte l'applicazione. Si associa direttamente al nome del ruolo su Azure. Consente anche di distinguere i micro servizi che fanno parte di una singola applicazione.
iKey IKey Identificatore univoco legacy usato per associare i dati di telemetria a una risorsa specifica di Application Insights.
itemId Non disponibile Identificatore univoco per un elemento di telemetria specifico.
itemCount ItemCount Numero di occorrenze o conteggi associati a un singolo evento di telemetria.
operation_Id OperationId Identificatore univoco dell'operazione radice. Questo identificatore univoco consente di raggruppare i dati di telemetria tra componenti multipli. Per altre informazioni, vedere Correlazione dei dati di telemetria. Una richiesta o una visualizzazione di una pagina crea l'ID operazione. Tutti gli altri dati di telemetria impostano questo campo sul valore per la visualizzazione pagina o la richiesta che lo contiene.
operation_Name OperationName Nome (gruppo) dell'operazione. Una richiesta o una visualizzazione di una pagina crea il nome dell'operazione. Tutti gli altri elementi di telemetria impostano questo campo sul valore della richiesta o della visualizzazione di pagina che lo contiene. Il nome dell'operazione è usato per individuare tutti gli elementi di telemetria per un gruppo di operazioni (ad esempio GET Home/Index). Questa proprietà di contesto viene usata per rispondere a domande come: Quali sono le eccezioni tipiche generate in questa pagina?
operation_ParentId ParentId Identificatore univoco dell'elemento padre diretto dell'elemento di telemetria. Per altre informazioni, vedere Correlazione dei dati di telemetria.
operation_SyntheticSource SyntheticSource Nome dell'origine sintetica. Alcuni dati di telemetria generati dall'applicazione possono rappresentare traffico sintetico. Potrebbe trattarsi di agenti di ricerca Web che indicizzano il sito Web, test di disponibilità del sito o tracce di librerie di diagnostica come Application Insights SDK stesso.
sdkVersion SDKVersion Versione di Application Insights SDK che invia dati di telemetria. Per altre informazioni, vedere Versione dell'SDK.
session_Id SessionId L'ID sessione è l'istanza di interazione dell'utente con l'app. Le informazioni contenute nei campi di contesto della sessione si riferiscono sempre all'utente. Quando i dati di telemetria vengono inviati da un servizio, il contesto di sessione si riferisce all'utente che ha avviato l'operazione nel servizio.
user_AuthenticatedId UserAuthenticatedId Un ID utente autenticato è l'opposto di un ID utente anonimo. Questo campo rappresenta l'utente con un nome amichevole. Questo ID viene raccolto solo per impostazione predefinita con AuthenticatedUserIdTelemetryInitializer dell'SDK di ASP.NET Framework.

Usare Application Insights SDK per inizializzare l'ID utente autenticato con un valore che identifica l'utente in modo permanente tra browser e dispositivi. In questo modo, tutti gli elementi di telemetria vengono attribuiti a tale ID univoco. Questo ID consente l'esecuzione di query per tutti i dati di telemetria raccolti per un utente specifico (soggetti a configurazioni di campionamento e filtri di telemetria).

Gli ID utente possono essere incrociati con gli ID di sessione per fornire dimensioni di telemetria uniche e stabilire l'attività dell'utente durante una sessione.
user_Id UserId L'ID utente anonimo rappresenta l'utente dell'applicazione. Quando i dati di telemetria vengono inviati da un servizio, il contesto utente si riferisce all'utente che ha avviato l'operazione nel servizio.

Il campionamento è una delle tecniche per ridurre al minimo la quantità di dati di telemetria raccolti. Un algoritmo di campionamento tenta di sondare tutti i dati di telemetria correlati in ingresso o in uscita. Viene usato un ID utente anonimo per la generazione del punteggio di campionamento, quindi un ID utente anonimo deve essere un valore sufficientemente casuale.

Il numero di ID utente anonimi non corrisponde al numero di utenti univoci dell'applicazione. Il numero di ID utente anonimi è in genere superiore perché ogni volta che l'utente apre l'app in un dispositivo o browser diverso o pulisce i cookie del browser, viene allocato un nuovo ID utente anonimo univoco. Questo calcolo potrebbe comportare il conteggio degli stessi utenti fisici più volte.

Gli ID utente possono essere incrociati con gli ID di sessione per fornire dimensioni di telemetria uniche e stabilire l'attività dell'utente durante una sessione.

L'uso di un ID utente anonimo per archiviare un nome utente rappresenta un uso improprio del campo. Usare un ID utente autenticato.
_ResourceId _ResourceId ID risorsa di Azure completo del componente Application Insights, che include la sottoscrizione, il gruppo di risorse e il nome della risorsa.

Passaggi successivi