Telemetria delle richieste: modello di dati di Application Insights

In Application Insights, un elemento di telemetria delle richieste rappresenta la sequenza logica di esecuzione attivata da una richiesta esterna all'applicazione. Ogni esecuzione di richiesta è identificato da un ID univoco e un url contenente 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. Le esecuzioni con esito positivo e negativo possono essere ulteriormente raggruppate in base a resultCode. L'ora di inizio della telemetria delle richieste è definita a livello di busta.

La telemetria delle richieste supporta il modello di estendibilità standard usando properties e measurements personalizzate.

Nome

Il nome della richiesta rappresenta il percorso di codice intrapreso per elaborare la richiesta. Un valore di cardinalità basso consente di raggruppare meglio le 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.

Web Application Insights SDK invia il nome della richiesta "così com'è" per quanto riguarda le maiuscole e minuscole. Il raggruppamento nell'interfaccia utente considera la distinzione tra maiuscole e minuscole, pertanto GET /Home/Index viene considerato diverso da GET /home/INDEX, anche se spesso riguardano l'esecuzione della stessa azione e dello stesso controller. Ciò accade perché gli URL rilevano in genere la distinzione tra maiuscole e minuscole. Si consiglia di verificare se tutti gli errori 404 si sono verificati per gli URL digitati in maiuscolo. Altre informazioni sulla raccolta di nomi di richiesta da ASP.Net Web SDK sono disponibili nel post di blog.

Lunghezza massima: 1024 caratteri

ID

Identificatore dell'istanza di una chiamata di richiesta. Usato per la correlazione tra richiesta e altri elementi di telemetria. L'ID deve essere globalmente univoco. Per altre informazioni vedere la pagina relativa alla correlazione.

Lunghezza massima: 128 caratteri

Url

URL della richiesta con tutti i parametri di stringa di query.

Lunghezza massima: 2048 caratteri

Sorgente

Origine della richiesta. Esempi sono la chiave di strumentazione o l'indirizzo IP del chiamante. Per altre informazioni vedere la pagina relativa alla correlazione.

Lunghezza massima: 1024 caratteri

Durata

Durata della richiesta in formato: 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.

Codice della risposta

Risultato dell'esecuzione di una richiesta. Codice di stato HTTP per le richieste HTTP. Potrebbe essere un valore HRESULT o un tipo di eccezione per altri tipi di richiesta.

Lunghezza massima: 1024 caratteri

Success

Indicazione di chiamata con esito positivo o con esito negativo. Questo campo è obbligatorio. Se non è impostata in modo esplicito su false la richiesta viene considerata con esito positivo. Impostare questo valore su false se l'operazione è stata interrotta da un'eccezione o un codice di errore restituito.

Per le applicazioni Web, Application Insights definisce una richiesta come non 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. Può indicare anche un collegamento interrotto. Nel caso di collegamenti interrotti, è anche 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. È possibile contrassegnarli come errori anche quando l'accesso viene effettuato dall'applicazione per dispositivi mobili dell'azienda. 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. L'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 in cui l'esito positivo può essere il peggiore dei codici di risposta separati.

Altre informazioni sui codici di stato e dei risultati della richiesta sono disponibili nel post del blog.

Proprietà personalizzate

Raccolta nome-valore di proprietà personalizzate. Questa raccolta viene usata per estendere la telemetria standard con dimensioni personalizzate, ad esempio uno slot di distribuzione che ha generato dati di telemetria o una proprietà specifica degli elementi di telemetria come il numero d'ordine.

La lunghezza massima della chiave è 150 e quella del valore è 8192.

Misure personalizzate

Raccolta di misure personalizzate. Usare questa raccolta per segnalare la misura denominata associata all'elemento di telemetria. Casi d'uso tipici sono i seguenti:

  • dimensioni del payload della telemetria di dipendenza
  • numero di elementi in coda elaborati dalla telemetria delle richieste
  • tempo impiegato dal cliente per completare il passaggio nella telemetria degli eventi di completamento dei passaggi della procedura guidata.

È 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 e sono soggette al campionamento con l'elemento di telemetria contenente tali misurazioni. Per rilevare una misura che ha un valore indipendente da altri tipi di telemetria, usare Dati di telemetria relativi alle metriche.

Lunghezza massima della chiave: 150

Passaggi successivi