Elementi consigliati per la progettazione e la creazione di un sistema di monitoraggio
Si applica a questa raccomandazione dell'elenco di controllo di Eccellenza operativa di Power Platform Well-Architected:
OE:06 | Progetta e implementa un sistema di monitoraggio per convalidare le scelte di progettazione e informa le future decisioni di progettazione e aziendali. Questo sistema acquisisce ed espone i dati di telemetria operativi, le metriche e i log generati dal carico di lavoro. |
---|
Questa guida descrive gli elementi consigliati per la progettazione e la creazione di un sistema di monitoraggio. Per monitorare in modo efficace il carico di lavoro in termini di sicurezza, prestazioni e affidabilità, è necessario un sistema completo con un proprio stack che fornisca la base per tutte le funzioni di monitoraggio, rilevamento e avviso.
Definizioni
Termine | Definizione |
---|---|
Registri | Eventi di sistema registrati. I log possono contenere diversi tipi di dati in formato testo strutturato o in formato libero. Contengono un timestamp. |
Metrica | Valori numerici raccolti a intervalli regolari. Le metriche descrivono alcuni aspetti di un sistema in un momento particolare. |
Strategie di progettazione chiave
Per implementare una progettazione completa del sistema di monitoraggio per il tuo carico di lavoro, segui questi principi fondamentali:
Quando possibile, sfrutta gli strumenti di monitoraggio forniti dalla piattaforma, che in genere richiedono poca configurazione e possono fornire informazioni approfondite sul carico di lavoro che altrimenti potrebbero essere difficili da ottenere.
Raccogli log e parametri dall'intero stack del carico di lavoro. Tutti i componenti con poco codice e code first e le risorse dovrebbero essere configurati per produrre dati standardizzati e significativi e tali dati devono essere raccolti.
Archivia i dati raccolti in una soluzione di archiviazione standardizzata, affidabile e sicura.
Elaborare i dati archiviati in modo che possano essere gestiti da soluzioni di analisi e visualizzazione.
Analizzare i dati elaborati per determinare con precisione lo stato del carico di lavoro.
Visualizza lo stato del carico di lavoro in dashboard o report significativi per i team del carico di lavoro e altre parti interessate.
Configura avvisi utilizzabili e altre risposte automatiche a soglie definite in modo intelligente per avvisare i team del carico di lavoro quando si verificano problemi.
Includi sistemi di monitoraggio e avviso nelle pratiche generali di test del carico di lavoro.
Garantisci che i sistemi di monitoraggio e allerta siano oggetto di miglioramento continuo. Il comportamento dell'applicazione e della configurazione in produzione offre opportunità di apprendimento continuo. Incorpora queste lezioni nei progetti di monitoraggio e avviso.
Associa i dati di monitoraggio raccolti e analizzati ai flussi di sistema e utente per correlare l'integrità dei flussi con i dati, nonché l'integrità complessiva del carico di lavoro. L'analisi di tali dati in termini di flussi aiuta ad allineare la strategia di osservabilità con il modello di integrità.
Riduci al minimo l'archiviazione di qualsiasi informazione identificabile per garantire il rispetto delle leggi e dei regolamenti. Se hai bisogno di archiviare informazioni identificabili, assicurati di prendere in considerazione i requisiti che consentono agli utenti di richiedere l'eliminazione delle proprie informazioni.
Non registrare mai le password degli utenti o altre informazioni che potrebbero essere utilizzate per commettere frodi sull'identità. Cancella questi dettagli dai dati prima che vengano archiviati. I requisiti normativi potrebbero imporre che le informazioni raccolte per il controllo e la sicurezza debbano essere archiviate e salvate. Anche questi dati sono sensibili e potrebbe essere necessario crittografarli o proteggerli in altro modo per evitare manomissioni.
Dovresti automatizzare il più possibile tutte le funzioni del sistema di monitoraggio e tutte dovrebbero funzionare continuamente, tutto il giorno, tutti i giorni.
Questa pipeline del flusso di lavoro illustra il sistema di monitoraggio:
Raccolta
È necessario configurare tutti i componenti del carico di lavoro, sia che si tratti di componenti con poco codice o code-first o di impostazioni della piattaforma come ambienti e criteri, per acquisire dati di telemetria ed eventi come log e metriche.
I log sono utili principalmente per rilevare e indagare sulle anomalie. In genere, i log vengono prodotti dal componente del carico di lavoro e quindi inviati alla piattaforma di monitoraggio o estratti dalla piattaforma di monitoraggio con l'automazione.
Le metriche sono utili principalmente per creare un modello di integrità e identificare le tendenze nelle prestazioni e nell'affidabilità del carico di lavoro. Le metriche sono utili anche per identificare le tendenze nel comportamento di utilizzo dei tuoi utenti. Queste tendenze possono aiutare a guidare le decisioni sui miglioramenti dal punto di vista del cliente. In genere, i parametri vengono definiti nella piattaforma di monitoraggio e la piattaforma di monitoraggio e altri strumenti eseguono un sondaggio del carico di lavoro per acquisire i parametri.
Dati sul carico di lavoro
Utilizza l'integrazione con Application Insights predefinita per raccogliere dati. Dopo aver abilitato Application Insights, puoi ottenere una chiara visibilità sugli eventi importanti, sia in tempo reale che cronologicamente.
I log delle applicazioni supportano il ciclo di vita dell'applicazione end-to-end. La registrazione è essenziale per comprendere come funziona l'applicazione in vari ambienti, quali eventi si verificano e le condizioni in cui si verificano.
Ti consigliamo di raccogliere gli eventi e i log dell'applicazione in tutti i principali ambienti. Separare il più possibile i dati tra gli ambienti utilizzando archivi dati diversi per ogni ambiente, se ciò è pratico. Utilizza i filtri per garantire che gli ambienti non critici non complichino l'interpretazione dei log di produzione. Infine, i log di registro corrispondenti nell'applicazione dovrebbero acquisire un ID di correlazione per le rispettive transazioni.
Infrastruttura e dati di configurazione
Per le risorse dell'infrastruttura nel tuo carico di lavoro, assicurati di raccogliere sia log che parametri. Poiché Power Platform è un'offerta PaaS (Platform as a Service), la capacità di acquisire i log relativi all'infrastruttura sottostante potrebbe essere limitata. Puoi, tuttavia, acquisire log e analisi sulle modifiche alla configurazione e ai criteri relativi allo stato e agli incidenti del carico di lavoro.
Per quanto possibile, raccogli i log dalla tua piattaforma cloud. Potresti essere in grado di raccogliere log delle attività per la tua sottoscrizione e log di diagnostica per il piano di gestione.
Considerazioni sulle prestazioni
Un'applicazione complessa e altamente scalabile potrebbe generare enormi volumi di dati. La quantità di dati può causare problemi di prestazioni a seconda del livello di dettaglio della traccia a livello di applicazione. La soluzione di telemetria non deve fungere da collo di bottiglia e deve essere scalabile man mano che il sistema si espande.
Analisi
Dopo aver raccolto i dati da varie origini, analizzali per valutare il benessere generale del sistema. Per questa analisi, avere una chiara comprensione di:
- Come strutturare i dati in base agli indicatori di prestazioni chiave (KPI) e ad altre metriche di prestazioni definite.
- Modalità di correlazione dei dati acquisiti in diverse metriche e file di registro. Questa correlazione è importante quando si tiene traccia di una sequenza di eventi e può aiutare a diagnosticare i problemi.
Nella maggior parte dei casi, il carico di lavoro avrà componenti diversi e i registri o gli eventi verranno acquisiti in formati o tabelle diversi. Sarà necessario combinare accuratamente i dati per comprendere lo stato generale del carico di lavoro.
Ad esempio, la soluzione Power Platform potrebbe essere costituita dai componenti seguenti:
- Un'app canvas che consente agli utenti di interagire con i dati
- Un'app basata su modello che consente agli amministratori di configurare le impostazioni per l'applicazione
- Un flusso cloud che esegue operazioni sui dati
- Un'istanza Dataverse che archivia i dati associati all'operazione
- Una funzione di Azure che recupera dati dall'archiviazione tabelle di Azure e viene chiamata dall'applicazione
I dati di utilizzo per una singola operazione aziendale potrebbero coprire tutti i componenti del carico di lavoro. Queste informazioni devono essere correlate per fornire una visione complessiva dell'utilizzo delle risorse e dell'elaborazione per l'operazione.
Elementi consigliati per l'analisi di dati
Correlazione di log a livello di applicazione e a livello di risorsa. Valuta i dati a entrambi i livelli per ottimizzare il rilevamento e la risoluzione dei problemi.
Definisci tempi di ritenzione chiari per la conservazione per l'analisi a freddo. Consigliamo questa procedura per consentire l'analisi cronologica su un periodo specifico. Può anche aiutarti a controllare i costi di archiviazione. Implementa processi che garantiscano che i dati vengano archiviati in uno spazio di archiviazione più economico e aggregano i dati per l'analisi delle tendenze a lungo termine.
Analizza le tendenze a lungo termine per prevedere i problemi operativi. Valuta i dati a lungo termine per formulare strategie operative e anche per prevedere quali problemi operativi potrebbero verificarsi e quando. Ad esempio, potresti notare che i tempi di risposta medi aumentano lentamente nel tempo e si avvicinano al target massimo.
Visualizzazione
La visualizzazione nel monitoraggio dello stato è fondamentale per comprendere lo stato del carico di lavoro. La visualizzazione consente di identificare rapidamente problemi e tendenze e di comprendere l'effetto delle modifiche apportate al carico di lavoro.
Dashboard
Il modo più comune per visualizzare i dati consiste nell'utilizzare dashboard in grado di visualizzare informazioni sotto forma di diagrammi o grafici. Questi elementi possono essere parametrizzati e un analista può selezionare parametri importanti, come il periodo di tempo, per qualsiasi situazione specifica.
Allinea i tuoi dashboard con il tuo modello di integrità in modo che indichino quando il carico di lavoro o i componenti del carico di lavoro sono integri, degradati o non integri.
Affinché un sistema di dashboard funzioni in modo efficace, deve essere significativo per il team del carico di lavoro. Visualizza le informazioni relative allo stato del carico di lavoro e che sono anche utilizzabili. Quando il carico di lavoro o un componente è degradato o non integro, i membri del team del carico di lavoro dovrebbero essere in grado di identificare facilmente dove ha origine il problema nel carico di lavoro e avviare le azioni correttive o le indagini. Al contrario, l'inclusione di informazioni che non sono utilizzabili o che non sono correlate all'integrità del carico di lavoro può rendere il dashboard inutilmente complesso e frustrante per i membri del team che stanno cercando di distinguere il rumore di fondo dai dati utilizzabili.
Potresti avere dashboard personalizzate per le parti interessate o gli sviluppatori per mostrare solo i dati sul carico di lavoro che ritengono rilevanti. Assicurati che il team del carico di lavoro comprenda i tipi di punti dati che gli altri team sono interessati a vedere e visualizzi in anteprima i dashboard prima di condividerli per verificarne la chiarezza. Fornire dashboard sul carico di lavoro per gli stakeholder è un buon modo per tenerli informati sull'integrità del carico di lavoro, ma comporta il rischio di essere controproducente se gli stakeholder non comprendono chiaramente i dati.
Limita l'accesso alla dashboard al personale autorizzato. Le informazioni sui dashboard potrebbero essere sensibili. Dovresti anche proteggere i dati sottostanti per impedire agli utenti di modificarli.
Report
Il reporting viene utilizzato per generare una visione complessiva del sistema. Potrebbe integrare dati storici e informazioni attuali. I requisiti di reporting rientrano in due grandi categorie: reporting operativo e reporting di sicurezza.
Il reporting operativo in genere include:
- Statistiche di aggregazione utilizzabili per comprendere l'utilizzo delle risorse del sistema complessivo o di sottosistemi specificati durante un intervallo di tempo specificato.
- Identificazione delle tendenze nell'utilizzo delle risorse per l'intero sistema o per sottosistemi specifici durante un periodo specificato.
- Monitoraggio delle eccezioni che si sono verificate in tutto il sistema o in sottosistemi specifici durante un periodo specificato.
- Determina l'efficienza dell'applicazione per le risorse distribuite e comprendi se il volume delle risorse e i costi associati possono essere ridotti senza influire inutilmente sulle prestazioni.
Il reporting sulla sicurezza tiene traccia dell'utilizzo del sistema da parte del cliente. Può includere:
- Controllo delle operazioni dell'utente. Questa attività richiede la registrazione delle singole richieste che ciascun utente completa, insieme a date e orari. I dati dovrebbero essere strutturati per consentire a un amministratore di ricostruire rapidamente la sequenza di operazioni che un utente completa durante un periodo specificato.
- Monitoraggio dell'utilizzo delle risorse da parte dell'utente. Questa attività richiede la registrazione del modo in cui ogni richiesta di un utente accede alle varie risorse del sistema e per quanto tempo. Un amministratore può utilizzare questi dati per generare un rapporto di utilizzo, per utente, per un periodo specificato, possibilmente per la fatturazione.
Avvisi
Per garantire che il sistema rimanga integro, reattivo e sicuro, impostare gli avvisi in modo che gli operatori possano rispondere in modo tempestivo. Un avviso può contenere informazioni contestuali sufficienti per aiutarli a iniziare rapidamente le attività diagnostiche.
Elementi consigliati per gli avvisi
- Definisci un processo per la risposta agli avvisi che identifichi i proprietari e le azioni responsabili.
- Configura gli avvisi per un ambito ben definito e regola la verbosità per ridurre al minimo il rumore.
- Utilizza una soluzione di avviso automatizzata, come Splunk o Monitoraggio di Azure, invece di richiedere alle persone di cercare attivamente i problemi.
- Utilizza gli avvisi per rendere operativi i processi di riparazione. Ad esempio, crea automaticamente ticket per tenere traccia di problemi e risoluzioni.
Soglie
Gli avvisi vengono generati quando vengono superate le soglie, come rilevato dal sistema di monitoraggio. Assicurati che le soglie impostate generalmente ti diano tempo sufficiente per implementare le modifiche necessarie al carico di lavoro per evitare degradazioni o interruzioni. Dovresti anche implementare la gestione degli errori necessaria e individuare gli errori noti nel carico di lavoro per ridurre il numero di avvisi. Ad esempio, configura i criteri di ripetizione per le azioni nei flussi cloud in modo che venga eseguito un nuovo tentativo come parte dell'esecuzione del flusso e solo se i tentativi ripetuti hanno esito negativo, viene registrato un errore del flusso e viene inviato un avviso. Altre informazioni in Consigli per la progettazione di una strategia di monitoraggio e avvisi affidabile.
Facilitazione di Power Platform
Power Platform si integra con Application Insights, che fa parte dell'ecosistema Monitoraggio di Azure. Utilizza l'integrazione per:
Ricevere telemetria su diagnostica e prestazioni acquisita dalla piattaforma Dataverse in Application Insights. Puoi iscriverti per ricevere la telemetria sulle operazioni che le applicazioni eseguono nel database Dataverse e nelle app basate su modello. Questa telemetria fornisce informazioni che puoi utilizzare per diagnosticare e risolvere i problemi relativi a errori e prestazioni.
Connettere le app canvas ad Application Insights. Puoi utilizzare queste analisi per diagnosticare problemi e capire cosa fanno gli utenti con le tue app. Puoi raccogliere informazioni per aiutarti a prendere decisioni aziendali migliori e migliorare la qualità delle tue app.
Configurare la telemetria Power Automate per eseguire flussi in Application Insights. Ad esempio, puoi monitorare le esecuzioni del flusso cloud e creare avvisi per gli errori di esecuzione del flusso cloud.
Acquisisci i dati di telemetria dall'Microsoft Copilot Studio agente per usarli in Application Insights di Azure. Puoi usare questi dati di telemetria per monitorare i messaggi e gli eventi registrati inviati a e dal tuo agente, gli argomenti da attivare durante le conversazioni utente e gli eventi di telemetria personalizzati che possono essere inviati dai tuoi argomenti.
Il log delle risorse di Power Platform nel portale di conformità di Microsoft Purview. La maggior parte degli eventi sono disponibili entro 24 ore dall'attività. Non utilizzare queste informazioni per il monitoraggio in tempo reale. Per ulteriori informazioni sulla registrazione delle attività in Power Platform, vedi:
- Power Apps
- Power Automate
- Copilot Studio
- Power Pages
- Connettori Power Platform
- Prevenzione della perdita dei dati
- Log amministrativi di Power Platform
- Controllo di Dataverse
Il carico di lavoro Power Platform potrebbe includere risorse Azure. Altre informazioni in Consigli per la progettazione e la creazione di un sistema di monitoraggio.
Lo starter kit CoE di Power Platform è un'implementazione di riferimento che contiene una raccolta di componenti e strumenti che ti consentono di iniziare a sviluppare una strategia per l'adozione e il supporto di Power Platform. Lo starter kit CoE include un ricco set di dashboard. Altre informazioni in Ottenere informazioni dettagliate approfondite sull'adozione di Microsoft Power Platform con la dashboard CoE di Power BI.
Il kit di automazione di Power Platform è un set di strumenti che accelera l'uso e il supporto di Power Automate per desktop nei progetti di automazione. Il kit fornisce gli strumenti che consentono di gestire i progetti di automazione e di monitorarli per stimare il risparmio e il ritorno sull'investimento (ROI). Parte del kit di automazione è il centro di controllo, che integra la funzionalità Monitora esecuzioni del flusso desktop. L'obiettivo principale del centro di controllo è una vista dell'orchestratore che consente agli analisti e alle organizzazioni di supporto di monitorare, agire e avvisare quando necessario.
Informazioni correlate
- Elementi consigliati per la progettazione di una strategia di avvisi e monitoraggio affidabile
- Raccomandazioni per il monitoraggio e il rilevamento delle minacce