Esercizio - Monitoraggio delle prestazioni applicative
In questo esercizio, senza configurazione, si monitorano semplicemente i flussi di dati per l'applicazione di esempio.
Monitorare l'applicazione con Azure Application Insights
La mappa delle applicazioni consente di individuare colli di bottiglia delle prestazioni o aree soggette a errore in tutti i componenti dell'applicazione distribuita.
Aprire il portale di Azure.
Selezionare Azure Spring Apps nell'elenco dei servizi di Azure.
Selezionare l'istanza di Azure Spring Apps.
Selezionare Application Insights per passare alla pagina di panoramica di Application Insights.
A sinistra passare a Mappa applicazioni, in cui è possibile visualizzare una visualizzazione dei microservizi di Azure Spring Apps:
La mappa delle applicazioni mostra le applicazioni che funzionano correttamente (verde) e applicazioni con colli di bottiglia (rosso).
Nella mappa delle applicazioni precedente ogni nome in una casella verde è un servizio diverso di Azure Spring Apps.
È possibile identificare facilmente i problemi nelle applicazioni e risolverli rapidamente. Ogni nodo della mappa rappresenta un microservizio o le relative dipendenze con un indicatore KPI dell'integrità e lo stato degli avvisi. È possibile selezionare qualsiasi componente per ottenere una diagnostica più dettagliata, ad esempio sugli eventi di Application Insights.
Prestazioni
A sinistra passare a Prestazioni, in cui è possibile visualizzare i tempi di risposta e i conteggi delle richieste per le operazioni esposte dalle applicazioni.
A destra passare quindi a Dipendenze, in cui è possibile visualizzare tutte le dipendenze e i relativi tempi di risposta e conteggi delle richieste.
È possibile visualizzare il valore delle prestazioni per le dipendenze, in particolare le chiamate a SQL:
Selezionare un'istruzione SQL nella scheda Seleziona operazione per visualizzare la transazione nel contesto:
Quindi, nella scheda a destra selezionare Drill-into e nella scheda all'estrema destra selezionare un esempio SQL per aprire la finestra dei dettagli della transazione:
Infine, nella visualizzazione Dettagli delle transazioni end-to-end selezionare l'istruzione SQL per visualizzare la transazione SQL di esempio:
Errori ed eccezioni
Selezionare Errori nel menu delle risorse di Application Insights, disponibile nella sezione Analisi . Questa visualizzazione contiene i tre codici di risposta degli errori più frequenti, i tre tipi di eccezione più frequenti e i tre tipi di dipendenze con errori più frequenti.
Sul lato destro selezionare un'eccezione in 3 tipi di eccezione più frequenti per visualizzare informazioni dettagliate e un'analisi dello stack fruibile:
Nella scheda a destra selezionare quindi l'esempio di eccezione Suggerita per aprire la finestra dei dettagli della transazione:
Visualizzare quindi le proprietà dell'eccezione nella finestra Dettagli delle transazioni end-to-end:
Infine, al centro della schermata, nella scheda End-to-end transaction selezionare un'eccezione per visualizzarne i dettagli e il stacktrace:
Metriche
Spring Boot registra molte metriche principali: JVM, CPU, Tomcat, Logback e così via. È possibile visualizzare le metriche fornite dalle app Spring Boot, dai moduli Spring Apps e dalle dipendenze.
Per creare un grafico delle metriche standard, nella sezione Monitoraggio aprire la scheda Metriche e seguire questa procedura:
Assicurarsi che il servizio Azure Spring Apps sia selezionato inAmbito e in Azure Spring Apps sotto a Spazio dei nomi della metrica. Entrambe le opzioni saranno già popolate se è stata aperta la finestra Esplora metriche dal menu della risorsa.
Quindi, in Metriche, selezionare Utilizzo CPU app e selezionare Avg in Aggregazione.
Salvare la prima metrica selezionando l'icona Tick sulla barra delle metriche a destra.
Aggiungere quindi un'altra metrica selezionando l'azione Aggiungi metrica nella barra degli strumenti in alto a sinistra e aggiungere system.cpu.usage in Metric e Avg in Aggregation (Aggregazione).
Salvare quindi la seconda metrica selezionando l'icona Tick sulla barra delle metriche a destra.
Infine, esaminare il grafico delle metriche, che mostra le metriche della CPU dell'app e del sistema.
Metriche personalizzate
Quando si distribuiscono risorse e applicazioni in Azure, è consigliabile iniziare a raccogliere dati di telemetria per ottenere informazioni dettagliate sulle prestazioni e sull'integrità. Azure rende disponibili alcune metriche predefinite. Queste metriche sono denominate standard o platform. Tuttavia, sono intrinsecamente limitate. È possibile raccogliere alcuni indicatori di prestazioni personalizzati o metriche specifiche dell'azienda per fornire informazioni più approfondite.
Analogamente al grafico delle metriche standard, per creare un grafico delle metriche personalizzato, aprire la scheda Metriche nella sezione Monitoraggio e seguire questa procedura:
Assicurarsi che il servizio App Spring di Azure sia selezionato nello strumento di selezione dell'ambito delle risorse. L'opzione sarà già popolata se è stata aperta la finestra Esplora metriche dal menu della risorsa.
Quindi, in Spazio dei nomi delle metriche, selezionare lo spazio dei nomi azure.applicationinsights. Lo spazio dei nomi è solo un modo per organizzare le metriche in modo da poterle trovare facilmente.
In Metriche aggiungere quindi le metriche e le aggregazioni personalizzate seguenti:
Successivamente, sul lato superiore destro, modificare il tipo di grafico in Grafico ad area.
Il grafico finale mostrerà i conteggi delle ultime 24 ore per ognuno dei microservizi relativi ad animali domestici, veterinari e proprietari:
Metriche attive
Quando si distribuisce una nuova versione dell'app Web, è importante sapere immediatamente l'effetto che avrà sulle prestazioni. I tempi di risposta sono migliorati o peggiorati oppure vengono visualizzati errori? Osservare Live Metrics Stream in Application Insights mentre è in corso la distribuzione. L'effetto verrà visualizzato immediatamente. In caso di problemi, è possibile sospendere la distribuzione prima che vengano interessati troppi utenti.
Live Metrics Stream consente di monitorare le metriche in tempo reale delle applicazioni live. È possibile selezionare e filtrare le metriche e i contatori delle prestazioni da osservare in tempo reale, senza interferenze del servizio. È anche possibile esaminare le tracce dello stack di richieste ed eccezioni di esempio non riuscite.





















