Monitorare le operazioni per l'acceleratore di zona di destinazione di Azure Spring Apps

Questo articolo fornisce considerazioni sull'osservabilità e consigli per l'applicazione Spring Boot distribuita in Azure Spring Apps.

L'organizzazione potrebbe fornire un monitoraggio centralizzato condiviso da tutti i carichi di lavoro o fornire aree di lavoro Log Analytics di Monitoraggio di Azure dedicate per ogni carico di lavoro. Se si prende dipendenza dalle risorse centralizzate, assicurarsi che i membri del team dell'applicazione abbiano accesso ai log con i ruoli controllo degli accessi in base al ruolo di Azure.

Per informazioni sulla progettazione della piattaforma, vedere Gestione e monitoraggio del carico di lavoro.

È possibile effettuare il provisioning delle proprie risorse di monitoraggio. Questo approccio offre al team dell'applicazione maggiore autonomia e semplifica la gestione complessiva dell'applicazione. Il compromesso potrebbe comportare un aumento del sovraccarico di gestione. L'acceleratore di zona di destinazione di Azure Spring Apps e le indicazioni seguenti si basano su questo approccio.

Considerazioni relative alla progettazione

  • Log e metriche. Raccogliere log e metriche generati dall'applicazione e dalle risorse. I log forniscono informazioni dettagliate sulle operazioni del carico di lavoro. Le metriche vengono raccolte a intervalli regolari e forniscono informazioni dettagliate quasi in tempo reale. I log e le metriche possono essere utili per le indagini correlate all'integrità e all'utilizzo delle risorse.

    Le metriche sono fondamentali per le decisioni di ridimensionamento. È possibile consentire alle app di ridimensionarsi in base alle soglie delle metriche oppure le app possono essere ridimensionate durante un intervallo di tempo specifico.

    È consigliabile archiviare questi dati per un'analisi futura. Mantenere la possibilità di visualizzare i dati, in modo da individuare rapidamente le tendenze.

  • Strumentazione. Implementare la strumentazione per generare più dati di osservabilità dall'applicazione. Per raccogliere informazioni di strumentazione, usare uno strumento di gestione delle prestazioni delle applicazioni, ad esempio applicazione Azure agente Java di Insights. Combinare la diagnostica della piattaforma con queste informazioni per offrire funzionalità di monitoraggio avanzate.

  • Traccia distribuita. Implementare la traccia distribuita per ottenere l'osservabilità tra diversi servizi all'interno dell'ecosistema di App Spring di Azure.

  • Avvisi. I team delle applicazioni devono ricevere una notifica sugli eventi importanti per il carico di lavoro. È possibile impostare avvisi che monitorano le risorse in base alle metriche, ad esempio archiviazione, frequenza di richieste e utilizzo dei dati.

  • Probe di integrità. È possibile configurare i probe di integrità per rilevare l'integrità dei servizi back-end. Esaminare come vengono configurati i probe di integrità in modo che le richieste vengano instradate a istanze integre e per assicurarsi che l'applicazione termini normalmente se i servizi back-end non sono disponibili.

Suggerimenti per la progettazione

  • Usare le metriche di Monitoraggio di Azure per raccogliere le metriche generate dalle risorse monitorate in un database time series.

    Per Azure Spring Apps, visualizzare i grafici in ogni pagina di panoramica dell'applicazione e la pagina delle metriche comuni.

  • Usare la pagina delle impostazioni di diagnostica in Azure Spring Apps per configurare la combinazione desiderata di impostazioni di diagnostica per le app.

    Nota

    Si verifica un ritardo per la visualizzazione dei log nell'account di archiviazione, nell'hub eventi o in Log Analytics. Se le istanze dell'app Spring vengono eliminate o spostate durante tale periodo, le impostazioni di diagnostica devono essere eliminate per assicurarsi che un'altra app con lo stesso ID risorsa non riutilizzi la stessa impostazione di diagnostica.

  • Usare Application Insights come strumento APM (Application Performance Monitoring) coerente in tutti i componenti dell'applicazione per raccogliere log applicazioni, metriche e tracce. Può raccogliere dati da tutte le dipendenze e le tracce e ha la possibilità di visualizzare le transazioni end-to-end.

    Azure Spring Apps consente di raccogliere le metriche Spring Cloud Resilience4J in Application Insights. Abilitare l'agente In-Process Java e configurare la raccolta di dimensioni per abilitare questa funzionalità.

    Azure Spring Apps integra Spring Cloud Sleuth e Zipkin con Application Insights.

  • Scegliere i meccanismi di individuazione dei servizi che consentono di individuare e registrare rapidamente le istanze dell'app. Le opzioni variano in base al livello Di Azure Spring Apps.

  • Usare insieme probe di conformità e attività in modo che le istanze di app non integre vengano rimosse dalle funzionalità di individuazione dei servizi.

  • Se l'applicazione ha un tempo di avvio più lungo, modificare il timeout initialDelaySeconds + periodSeconds * failureThreshold totale su un valore superiore all'ora di inizio dell'applicazione. Questa regolazione consente di evitare l'errore del probe e forza il riavvio dell'applicazione.

  • Configurare i probe di integrità per intervenire in base al comando specifico dell'applicazione, a una connessione TCP Socket o a una richiesta HTTP.

  • Per le app Spring Boot, sfruttare l'indicatore di integrità dell'attuatore Spring Boot per configurare i probe di integrità.

Passaggi successivi

Acceleratore di zona di destinazione di Azure Spring Apps