Avvisi di Azure Functions: Guida all'installazione
Vuoi assicurarti che le tue Funzioni di Azure funzionino senza problemi? Impostare correttamente gli avvisi può aiutarti a identificare e risolvere rapidamente i problemi. Ecco cosa imparerai in questa guida:
- Perché è importante l'avviso: Le Funzioni di Azure operano in un ambiente serverless basato sugli eventi, rendendo più difficile rilevare problemi di prestazioni come errori, picchi di latenza o limiti delle risorse.
- Cosa monitorare: Metriche chiave come il numero di esecuzioni, gli errori HTTP (5xx) e l'utilizzo delle risorse. Utilizza Application Insights per la telemetria e Azure Monitor per gli avvisi.
- Come impostare gli avvisi: Configura regole per problemi critici, come guasti funzionali o utilizzo anomalo delle risorse, e imposta gruppi di azioni per avvisare le persone giuste tramite e-mail, SMS o webhook.
- Buone pratiche: Utilizzare soglie dinamiche per ridurre i falsi allarmi, rivedere mensilmente le impostazioni degli avvisi e testare i gruppi di azioni per garantire l'efficacia delle notifiche.
In conclusione: Gli avvisi proattivi mantengono le tue app serverless affidabili e il tuo team preparato. Approfondiamo i dettagli.
Come configurare gli avvisi e i gruppi di azioni di Azure Monitor per le risorse di Azure?

Prerequisiti e configurazione iniziale
Prima di procedere alla configurazione degli avvisi, assicurati che l'ambiente Azure sia pronto, con tutte le autorizzazioni necessarie e che i dati di telemetria di Application Insights siano attivi.
Cosa ti serve prima di iniziare
Per configurare gli avvisi di Funzioni di Azure, sono necessari alcuni elementi essenziali. Innanzitutto, assicurati di disporre di una sottoscrizione Azure attiva con le autorizzazioni appropriate. In particolare, il tuo account dovrebbe avere accesso in lettura alla risorsa di destinazione (la tua app per le funzioni di Azure) e accesso in scrittura al gruppo di risorse in cui creerai le regole di avviso.
Per i permessi, il Collaboratore di monitoraggio il ruolo è ideale per creare e gestire gli avvisi, mentre il Lettore di monitoraggio il ruolo funziona se hai bisogno solo di visualizzare quelli esistenti dati di monitoraggioSe nessuna delle due opzioni si adatta al modello di sicurezza della tua organizzazione, puoi definire ruoli personalizzati con autorizzazioni più specifiche.
Successivamente, verifica di disporre di un'app per le funzioni di Azure operativa. Questa app dovrebbe già generare dati di telemetria, fondamentali per la configurazione di avvisi significativi. Traffico regolare o esecuzioni pianificate sono necessari per produrre i dati di telemetria necessari a supportare un monitoraggio efficace.
Integrazione con Approfondimenti sulle applicazioni È fondamentale. Application Insights raccoglie automaticamente metriche sulle prestazioni, log degli errori e dettagli di esecuzione dalle funzioni. Azure Monitor utilizza questi dati di telemetria per valutare le condizioni di avviso e inviare notifiche quando necessario.
Infine, configura gruppi di azione Per definire come verranno inviate le notifiche (ad esempio, via email, SMS o webhook). Senza gruppi di azioni, gli avvisi non invieranno notifiche alle persone o ai sistemi giusti in caso di problemi.
Prima di procedere, verifica che la configurazione di Application Insights sia attiva e che i dati vengano raccolti correttamente.
Verifica dell'integrazione di Application Insights

Una telemetria accurata è la spina dorsale di un sistema di avvisi efficace. Per garantirla, verifica che Application Insights sia correttamente integrato con la tua app Function.
Inizia accedendo alla tua app Funzione nel portale di Azure. Se vedi un banner con la scritta "Application Insights non è configurato", l'integrazione non è ancora stata configurata.
Per confermare l'integrazione, vai su impostazioni della tua app Funzione e seleziona Variabili ambientaliSotto il Impostazioni dell'app scheda, cerca il STRINGA DI CONNESSIONE DELLE APPLICAZIONI impostazione. Questa stringa di connessione è il modo moderno per collegare la tua app Funzione ad Application Insights. Se vedi solo APPINSIGHTS_CHIAVE STRUMENTAZIONE, valutare l'aggiornamento del formato della stringa di connessione per migliorare l'affidabilità e la sicurezza.
È anche possibile verificare l'integrazione utilizzando l'interfaccia della riga di comando di Azure. Ad esempio, per verificare un'app per le funzioni denominata cc-funzione-principale-app nel cloud-shell-storage-westeurope gruppo di risorse, eseguire il seguente comando:
az functionapp config appsettings list --name cc-main-function-app --resource-group cloud-shell-storage-westeurope Se l'output non viene visualizzato STRINGA DI CONNESSIONE DELLE APPLICAZIONI o APPINSIGHTS_CHIAVE STRUMENTAZIONE, Application Insights non è abilitato.
Una volta confermata l'esistenza della stringa di connessione, testa l'integrazione eseguendo manualmente le funzioni o attendendo l'esecuzione dei trigger pianificati. Quindi, controlla Monitor nella tua app Funzione per visualizzare le invocazioni recenti, inclusi i dettagli di esecuzione, la durata e lo stato di successo.
Per un approfondimento, visita la tua risorsa Application Insights. Utilizza il Metriche in tempo reale, Fallimenti, E Prestazione sezioni per confermare che la telemetria completa sia stata raccolta. Inoltre, è possibile utilizzare Analisi delle informazioni sulle applicazioni per interrogare tabelle di dati come tracce, richieste, E eccezioni per ulteriore convalida.
Tieni presente che i dati degli avvisi in Azure Monitor vengono conservati per 30 giorni, quindi avrai tutto il tempo necessario per rivedere e perfezionare la configurazione.
Impostazione degli avvisi in Azure Monitor
Dopo aver configurato Application Insights, il passaggio successivo consiste nel creare avvisi di monitoraggio in Azure Monitor per individuare eventuali problemi con le Funzioni di Azure. Azure Monitor funziona in sinergia con Application Insights, offrendo un framework solido per il monitoraggio delle metriche della piattaforma e dei log personalizzati. Questo offre una visione chiara delle prestazioni e dello stato generale delle funzioni.
Selezione di metriche e registri da monitorare
Azure Monitor raccoglie automaticamente le metriche della piattaforma dalle tue Funzioni di Azure senza richiedere configurazioni aggiuntive. Queste metriche includono il numero di esecuzioni, la durata, l'utilizzo della memoria e i codici di risposta HTTP. Per garantire il corretto funzionamento delle tue funzioni, concentrati sulle metriche che evidenziano problemi di affidabilità e prestazioni.
Le metriche chiave da tenere d'occhio includono Errori HTTP e conteggi delle connessioni, poiché forniscono un feedback immediato sull'accessibilità e sul funzionamento previsto delle funzioni. Ad esempio, un improvviso aumento degli errori HTTP 5xx potrebbe segnalare un problema di codice o un problema con un servizio downstream che richiede attenzione immediata.
Per approfondire i dettagli di esecuzione, le tracce personalizzate e gli errori, indirizza i log delle risorse ai log di Monitoraggio di Azure utilizzando le impostazioni di diagnostica. Questi log vengono archiviati in FunctionAppLogs all'interno dell'area di lavoro di Log Analytics, semplificandone l'interrogazione e l'analisi.
Tenete presente che il periodo di aggregazione per le metriche è in genere di 30 secondi o 1.000 esecuzioni. Application Insights utilizza anche una funzionalità di campionamento, che limita la telemetria a 20 esecuzioni al secondo per impostazione predefinita (o cinque nella versione 1.x). Sebbene ciò contribuisca a gestire costi e prestazioni, potrebbe comportare dati incompleti durante i periodi di traffico intenso.
Quando si decide cosa monitorare, è opportuno dare priorità ai problemi che richiedono un intervento immediato, come guasti alle funzioni, errori di dipendenza o timeout. È inoltre consigliabile monitorare le tendenze che segnalano problemi a lungo termine, come tempi di risposta più lunghi o un maggiore utilizzo della memoria.
Dopo aver identificato le metriche e i log più importanti, sei pronto a impostare le regole di avviso.
Creazione di regole di avviso
Dopo aver individuato le metriche e i log chiave, il passaggio successivo consiste nel configurare le regole di avviso per ricevere notifiche di comportamenti insoliti. Regole di avviso efficaci bilanciano sensibilità e praticità, garantendo la segnalazione di problemi critici senza essere sopraffatti da falsi allarmi. Ogni regola di avviso in Monitoraggio di Azure è composta da tre elementi principali: la risorsa monitorata, il segnale o i dati provenienti da tale risorsa e le condizioni che attivano l'avviso.
Per creare una regola di avviso, vai a Monitor > Avvisi > Regole di avviso nel portale di Azure e fare clic + Nuova regola di avvisoSeleziona la tua app funzione come risorsa di destinazione, quindi definisci le condizioni che attiveranno l'avviso.
Per gli avvisi basati su metriche, concentrati su scenari ad alta priorità. Ad esempio, gli errori del server HTTP (HTTP 5xx) sono cruciali perché hanno un impatto diretto sugli utenti. Se la tua app in genere non presenta errori 5xx, imposta un avviso per ogni occorrenza. Se gli errori occasionali sono normali, potresti impostare una soglia che si attivi solo quando si verificano più di cinque errori in un intervallo di cinque minuti.
Gli avvisi basati su log, invece, si basano sulle query Kusto per analizzare i dati nell'area di lavoro di Log Analytics. Sono particolarmente utili per identificare modelli complessi che potrebbero sfuggire a metriche semplici. Ad esempio, è possibile creare avvisi per scenari come quello in cui un singolo utente riscontra più errori in un breve periodo o quando i tassi di errore superano i livelli normali per endpoint specifici.
Ecco una tabella rapida delle regole di avviso più comuni per Funzioni di Azure:
| Tipo di avviso | Condizione | Descrizione |
|---|---|---|
| Metrico | Connessioni medie | Attivato quando le connessioni superano un valore impostato |
| Metrico | HTTP 404 | Attivato quando le risposte HTTP 404 superano un valore impostato |
| Metrico | Errori del server HTTP | Attivato quando gli errori HTTP 5xx superano un valore impostato |
| Registro attività | Crea o aggiorna l'app di funzione | Avviso quando l'app viene creata o aggiornata |
| Registro attività | Elimina l'app della funzione | Avviso quando l'app viene eliminata |
| Registro attività | Riavvia l'app della funzione | Avviso quando l'app viene riavviata |
| Registro attività | App con funzione di arresto | Avviso quando l'app viene arrestata |
Quando imposti le soglie, considera il comportamento normale della tua app. Una funzione che gestisce 1.000 richieste al minuto avrà metriche di base diverse rispetto a una che elabora solo 10 richieste all'ora. Regola le soglie per ridurre al minimo i falsi allarmi e al contempo individuare i problemi critici.
Testa le tue regole di avviso per assicurarti che funzionino come previsto. Puoi simulare determinate condizioni o attendere eventi naturali, ma in entrambi i casi, verifica che le notifiche vengano recapitate correttamente prima di utilizzarle in produzione.
Tieni presente che Azure archivia gli avvisi per 30 giorni. Se hai bisogno di dati per analisi a lungo termine, assicurati di esportarli o analizzarli prima di eliminarli.
Impostazione dei gruppi di azioni
I gruppi di azioni determinano cosa accade quando viene attivato un avviso. Definiscono le notifiche e le azioni automatiche che si verificano in risposta a un avviso. È possibile assegnare fino a cinque gruppi di azioni a una singola regola di avviso e più regole di avviso possono condividere lo stesso gruppo di azioni.
Per creare un gruppo di azioni, vai a Monitor > Avvisi > Gruppi di azioni nel portale di Azure e fare clic + CreaScegli metodi di notifica in linea con lo stile di comunicazione e il processo di escalation del tuo team. Per gli avvisi meno critici, le notifiche via email sono spesso sufficienti. Per problemi urgenti, valuta SMS o chiamate vocali per garantire una risposta più rapida.
L'email è il metodo di notifica più comune, poiché garantisce aggiornamenti tempestivi alle persone giuste. SMS e chiamate vocali sono più adatti per problemi svolti fuori orario o in situazioni in cui i membri del team potrebbero non controllare attivamente la posta elettronica.
Se devi integrare gli avvisi con sistemi esterni come strumenti di ticketing o piattaforme di chat, utilizza le azioni webhook. Ad esempio, se stai integrando Microsoft Teams, potresti dover utilizzare Logic Apps per formattare i dati degli avvisi nello schema richiesto. Questo approccio consente flussi di lavoro più sofisticati, come la valutazione della gravità degli avvisi, il controllo degli orari di apertura, l'escalation dei problemi o l'integrazione con altri strumenti.
Quando create gruppi di azioni, utilizzate nomi chiari e descrittivi. Ad esempio, nomi come "Avvisi-Critici-di-Produzione" o "Errori-HTTP-Team-Sviluppo" ne facilitano la comprensione a colpo d'occhio. Valutate la possibilità di impostare gruppi di azioni separati per diversi livelli di gravità. Ad esempio, problemi critici di produzione potrebbero attivare notifiche SMS per i tecnici reperibili, mentre gli avvisi per gli ambienti di sviluppo potrebbero essere inviati solo via email.
Testa i tuoi gruppi di azioni utilizzando la funzionalità di notifica di esempio di Azure per assicurarti che siano configurati correttamente. Questo passaggio è fondamentale per evitare sorprese durante un incidente reale.
Infine, ottimizza gli avvisi e i gruppi di azioni per evitare l'affaticamento da avvisi. Troppe notifiche possono portare a ignorare o disattivare avvisi importanti. Inizia con soglie conservative e modificale nel tempo in base all'esperienza con falsi positivi o avvisi non rilevati.
Rivedi e aggiorna regolarmente le regole di avviso e i gruppi di azioni. Con l'evoluzione della tua applicazione, i modelli di traffico, le nuove funzionalità e la struttura dei team possono influire su ciò che deve essere monitorato e su chi deve essere informato. Mantieni la tua strategia di avviso allineata a questi cambiamenti per mantenerne l'efficacia.
sbb-itb-59e1987
Linee guida per gli avvisi di Funzioni di Azure

Impostare regole di avviso efficaci non significa solo abilitare le notifiche. L'obiettivo è individuare problemi critici senza sovraccaricare il team con avvisi inutili.
Creazione di regole di avviso utili
La chiave per un sistema di avvisi efficace è impostare soglie che riflettano realmente il comportamento della tua applicazione. Le soglie generiche spesso non sono sufficienti perché ogni funzione di Azure ha i propri modelli di traffico, peculiarità prestazionali ed esigenze aziendali.
Inizia analizzando un baseline di due settimane delle prestazioni della tua applicazione. Questi dati storici ti aiutano a distinguere tra variazioni normali e problemi reali. Da lì, puoi impostare soglie significative e attuabili.
Le soglie dinamiche sono particolarmente utili. Regolandosi in base ai dati storici, si adattano a variazioni come i picchi di traffico stagionali, riducendo il rischio di falsi allarmi. Ad esempio, invece di generare un avviso per ogni fluttuazione, è possibile impostare una regola che si attivi solo se si verificano cinque errori HTTP 404 nell'arco di due minuti. Allo stesso modo, un breve picco nell'utilizzo della memoria potrebbe non essere un problema, ma un utilizzo elevato e prolungato della memoria per oltre cinque minuti potrebbe indicare una perdita di memoria.
Per evitare rumori indesiderati, implementate regole di elaborazione degli avvisi e liste di controllo. Questi strumenti possono sopprimere gli avvisi durante la manutenzione pianificata o gestire le eccezioni a livello centrale. Ad esempio, potete configurare gli avvisi critici per la produzione in modo che inviino notifiche SMS durante l'orario di lavoro, passino alle email durante la notte e passino alle chiamate telefoniche se il problema persiste.
Per scenari più complessi, Linguaggio di query Kusto (KQL) è una vera svolta. Con KQL, è possibile creare avvisi precisi basati su log che identificano modelli come errori ripetuti nella stessa sessione utente, errori a cascata tra le funzioni o picchi di errore insoliti. Questo approccio garantisce che i problemi importanti vengano segnalati, riducendo al contempo i falsi positivi.
Quando si assegnano nomi agli avvisi, la chiarezza è fondamentale. Utilizzare nomi che trasmettano immediatamente il sistema, l'ambiente e il tipo di problema, come "Produzione-ElaborazioneOrdini-TassoErroriElevato" o "Sviluppo-ErroriConnessioneAPIPagamenti-Errori". Aggiungere link per la risoluzione dei problemi o riferimenti al runbook alle descrizioni degli avvisi può accelerarne la risoluzione.
Infine, tieni presente che le regole di avviso non sono statiche. Sono necessari aggiornamenti regolari per adattarsi alle prestazioni in continua evoluzione della tua applicazione. La prossima sezione approfondisce come mantenere queste regole efficaci nel tempo.
Aggiornamento e revisione delle impostazioni di avviso
Una volta stabilite le soglie e le condizioni, le revisioni periodiche ne garantiscono l'efficacia. revisione mensile è un buon punto di partenza per mettere a punto il tuo sistema di avviso.
Durante queste revisioni, analizza la frequenza con cui gli avvisi sono stati attivati e come sono stati gestiti. Avvisi frequenti che non comportano azioni potrebbero indicare soglie troppo sensibili. D'altra parte, problemi non rilevati potrebbero rivelare lacune nella configurazione del monitoraggio.
È inoltre importante testare periodicamente le azioni di avviso. I contatti del team e i sistemi esterni cambiano nel tempo, quindi assicurati che le notifiche raggiungano sempre le persone giuste.
Tieni d'occhio le modifiche alle tue risorse che potrebbero influire sugli avvisi. Il ridimensionamento della tua app Function, l'aggiunta di nuove funzioni o la modifica delle distribuzioni possono modificare i livelli di base delle prestazioni. Aggiorna le soglie secondo necessità e valuta se nuovi scenari richiedono avvisi aggiuntivi.
Quando le funzioni vengono deprecate o modificate, rimuovete tempestivamente le regole di avviso obsolete. I vecchi avvisi possono ingombrare il sistema e distogliere l'attenzione dai problemi reali. Mantenere una documentazione chiara che associa le regole di avviso a componenti specifici può rendere questo processo molto più fluido.
Adatta i criteri di avviso in base alle informazioni operative. Ad esempio, se determinati avvisi si attivano frequentemente durante scenari noti come l'elaborazione batch o le distribuzioni, modifica le soglie o aggiungi regole di soppressione per ridurre al minimo i falsi positivi senza perdere di vista i problemi reali.
Le attività di manutenzione pianificata rappresentano un altro ambito in cui le regole di soppressione possono rivelarsi utili. La disattivazione temporanea di avvisi specifici durante la manutenzione previene notifiche non necessarie e garantisce la ripresa automatica del monitoraggio al termine della finestra di manutenzione.
Infine, rivedi regolarmente i tuoi gruppi di azione. Le responsabilità dei team e le rotazioni di reperibilità cambiano, quindi assicurati che le persone giuste vengano avvisate per ogni tipo di problema. Potresti anche creare gruppi di azione separati per diversi livelli di gravità o componenti applicativi per semplificare i percorsi di escalation e migliorare l'efficienza della risposta.
Conclusione
Per impostare un sistema di avvisi efficace per Funzioni di Azure, è necessario un attento equilibrio tra monitoraggio approfondito e applicazione pratica. Oltre alla configurazione iniziale, la chiave del successo risiede nella comprensione del comportamento dell'applicazione e nell'utilizzo dei dati storici per stabilire valori di riferimento significativi, anziché basarsi su soglie standardizzate.
Concentratevi sul monitoraggio di metriche critiche come il numero di connessioni, gli errori HTTP e gli eventi chiave del registro attività. Queste metriche forniscono una solida base per monitorare sia le prestazioni che lo stato operativo, aiutandovi a individuare potenziali problemi prima che si aggravino.
Revisioni e aggiornamenti regolari sono essenziali per mantenere il sistema di avviso allineato alle esigenze in continua evoluzione della tua applicazione. Valutazioni mensili possono aiutarti a ottimizzare soglie eccessivamente sensibili che generano rumore inutile e a identificare eventuali punti ciechi che potrebbero far passare inosservati i problemi.
Sfrutta le soglie dinamiche per ridurre i falsi positivi e adattarsi ai trend storici. Questo approccio elimina la necessità di incertezza legata alle soglie statiche, garantendo al contempo la sensibilità del sistema alle anomalie reali.
Per gestire i costi, riducete al minimo la frequenza degli avvisi per le ricerche nei log e selezionate attentamente le risorse da monitorare senza compromettere la copertura. Ricordate che Azure archivia i dati degli avvisi per 30 giorni, quindi documentate e rivedete regolarmente le impostazioni.
È altrettanto importante testare i gruppi di azione. Assicuratevi che le notifiche raggiungano le persone giuste e che le procedure di escalation funzionino senza intoppi quando si presentano problemi seri.
Un sistema di allerta ben gestito trasforma il vostro approccio da risoluzione reattiva dei problemi a prevenzione proattiva. Questo non solo garantisce prestazioni costanti, ma alleggerisce anche il carico di lavoro operativo per i vostri team di sviluppo e operations.
Domande frequenti
Come posso ridurre i falsi allarmi nel mio sistema di avvisi di Azure Functions?
Per ridurre al minimo i falsi allarmi nel sistema di avviso di Azure Functions, è essenziale concentrarsi sulla configurazione condizioni di allerta precise e significativeInvece di attivare avvisi per ogni singolo errore, valuta la possibilità di definire soglie basate su parametri che rappresentino realmente lo stato di salute della tua applicazione, come il monitoraggio del tasso di errore in un determinato periodo di tempo. In questo modo, puoi filtrare i problemi minori o temporanei che non richiedono attenzione immediata.
Un'altra strategia utile è quella di sfruttare soglie dinamiche In Monitoraggio di Azure. Queste soglie si regolano automaticamente in base ai dati storici e ai modelli di utilizzo tipici, semplificando la distinzione tra fluttuazioni normali e problemi effettivi.
Puoi anche implementare regole di elaborazione degli avvisi Per perfezionare le notifiche. Ad esempio, puoi eliminare gli avvisi durante le finestre di manutenzione programmata o raggruppare gli avvisi simili. Questi passaggi ti garantiscono di ricevere notifiche solo sugli aggiornamenti critici, aiutandoti a mantenere un sistema di avvisi affidabile senza interruzioni inutili.
Quali sono i vantaggi dell'utilizzo di soglie dinamiche per gli avvisi di Funzioni di Azure e come si confrontano con le soglie statiche?
Le soglie dinamiche per gli avvisi di Funzioni di Azure offrono un nuovo livello di flessibilità e precisione. Invece di basarsi su valori fissi, utilizzano l'apprendimento automatico per analizzare i dati storici e i trend delle prestazioni. Questo consente loro di adattarsi automaticamente ai cambiamenti, individuando le anomalie in modo più efficace e riducendo al minimo i falsi allarmi. Per gli ambienti con carichi di lavoro variabili, questo approccio garantisce che gli avvisi rimangano pertinenti e fruibili.
D'altro canto, le soglie statiche dipendono da valori predefiniti che devono essere impostati e aggiornati manualmente. Questo può comportare la mancata individuazione di problemi o un numero eccessivo di avvisi quando le prestazioni variano nel tempo. Eliminando la necessità di continue regolazioni manuali, le soglie dinamiche offrono un modo più intelligente e affidabile per gestire gli avvisi di Funzioni di Azure.
Come posso configurare gli avvisi di Funzioni di Azure per inviare notifiche a Microsoft Teams o ad altre piattaforme?
Per inviare avvisi di Funzioni di Azure a Microsoft Teams o ad altre piattaforme, puoi utilizzare Webhook in arrivoEcco come configurarlo:
Per prima cosa, crea un webhook in arrivo nel tuo canale Teams. Vai a Applicazioni scheda, seleziona la Webhook in arrivo connettore e segui le istruzioni per generare un URL webhook univoco per il tuo canale.
Una volta pronto, configura la tua Funzione di Azure per inviare avvisi effettuando richieste HTTP POST all'URL del webhook. All'interno della tua Funzione di Azure, scrivi il codice per monitorare eventi o condizioni specifici, formatta il messaggio di avviso come payload JSON e invialo al webhook. Questa configurazione consente notifiche in tempo reale, mantenendo il tuo team aggiornato e pronto ad agire in caso di eventi critici.