Registrazione, metriche e avvisi in Azure

Per comprendere le prestazioni del servizio di Azure, è necessario comprendere quali registrazioni, metriche e avvisi sono disponibili e come usarli.

Perché usare la registrazione, le metriche e gli avvisi?

Usare la tabella seguente per comprendere le informazioni sulle risorse di Azure.

Type

Domande di esempio

Hosting di Azure

I servizi di hosting, ad esempio il servizio app Azure e la funzione di Azure, offrono diversi tipi di feedback per rispondere a domande come:

  • L'applicazione (o il contenitore) è stata distribuita correttamente?
  • L'applicazione (o il contenitore) è stata avviata correttamente?
  • L'applicazione (o il contenitore) è in esecuzione correttamente?

Servizio di Azure

Azure offre metriche per i servizi, che consentono di ottenere risposte come:

  • Quanto è occupato il servizio?
  • Quali errori vengono generati dal servizio?
  • Il mio servizio è così occupato non è in grado di tenere il passo con la domanda?
  • È stata raggiunta la quota delle transazioni del piano tariffario?

Azure SDK

Azure SDK fornisce l'accesso ad Azure da molti linguaggi di programmazione. Gli SDK forniscono la registrazione per consentire di porre domande come:

  • Che cos'è l'SDK stesso?
  • Che cosa sta facendo il codice?

Codice o contenitore

Per comprendere il funzionamento del proprio codice o contenitore, integrare Application Insights da Monitoraggio di Azure. Application Insights consente di acquisire i log tra i servizi per una singola applicazione per porre domande come:

  • Quali eccezioni genera il codice?
  • Quali eventi sono attivati dal codice?
  • Come interagisce il codice con le dipendenze?

Cosa viene fornito per la registrazione, le metriche e gli avvisi?

Type Disponibilità Descrizione
Metriche Fornito senza configurazione Iniziare con le metriche perché ogni servizio di Azure avrà alcune metriche che consentono di visualizzare le prestazioni.
Avvisi Configurabile Configurare gli avvisi per ricevere una notifica quando si verificano comportamenti negativi o in scadenza della quota.
Registrazione Configurabile Alcuni servizi, ad esempio i servizi di hosting, hanno la registrazione per comprendere il comportamento del codice o del contenitore. Potrebbe essere necessario configurare la registrazione prima di visualizzare i file di log.
Registrazione personalizzata Configurabile tramite codice Dal proprio codice è possibile accedere a Monitoraggio di Azure usando Application Insights SDK per server e applicazioni client . Il codice non deve essere ospitato in Azure per accedere a Monitoraggio di Azure.

Visualizzare le metriche in portale di Azure

Visualizzare le metriche per la risorsa in base a una pianificazione nella portale di Azure nella sezione Monitoraggio -> Metriche.

Screenshot to view metrics for Cognitive Services in Azure portal.

Visualizzare gli avvisi in portale di Azure

Impostare gli avvisi per la risorsa nel portale di Azure per ogni risorsa. Gli avvisi possono includere metriche specifiche, flussi di comunicazione (ad esempio posta elettronica) e frequenza. Gli avvisi comuni da impostare sono totali:

  • Richieste
  • Ora di risposta
  • Errori del server HTTP (negli ambienti di hosting)

Set common alerts for your resource such as requests, response time and http server errors (for your hosting environment resources).

Visualizzare la registrazione del servizio ospitato in portale di Azure

Le applicazioni ospitate e i contenitori possono essere configurati per registrare informazioni su:

  • distribuzione
  • Avvio
  • run-time

Attivare questi log per comprendere il comportamento dell'applicazione ospitata. Questi log sono probabilmente la prima posizione in cui si apprenderà che la distribuzione non è riuscita o la configurazione di avvio non è configurata correttamente o le dipendenze mancanti.

Registrazione a stdout e stderr

La registrazione personalizzata viene fornita automaticamente dalle app Web di Azure e dalle funzioni di Azure, se si usano le funzioni di registrazione corrette:

  • Uso delle app Web console.log('your message here')
  • Usare le app per le funzioni context.log('your message here')

Registrazione personalizzata in Azure

È possibile aggiungere una registrazione personalizzata più completa con Application Insights di Monitoraggio di Azure, che offre scenari server (Node.js) e client (browser):

Abilitare la registrazione delle applicazioni con Application Insights

La scelta di registrazione ottimale e configurabile è Application Insights, che può fornire:

  • Registrazione standard
    • nel servizio di Azure
    • nel codice sorgente a seconda dell'inizializzazione
  • Registrazione personalizzata
    • dalla pipeline di distribuzione
    • nel codice sorgente

Abilitare la registrazione delle applicazioni per servizio app

Per abilitare la registrazione dell'host dell'applicazione nella portale di Azure:

  1. Passare a Monitoraggio -> servizio app log, abilitare Registrazione applicazioni per il file system.
  2. Configurare la quota (MB). Il valore predefinito è 35.
  3. Impostare il valore Periodo di conservazione (giorni) su un valore predefinito, ad esempio 3 o 7 giorni.
  4. Selezionare Salva per avviare l'acquisizione dei log host.

Visualizzare i log applicazioni per servizio app

Quando si attivano i log dell'applicazione, i log vengono archiviati nella cartella Logs dell'host dell'app Web. Visualizzare i log dalla portale di Azure o dall'estensione di Visual Studio Code per servizio app.

I formati dei nomi di file di log includono:

  • Distribuzione: {DATE-TIME}_{RANDOM-CHARS}_{docker}.log
  • Avvio e runtime: {DATE-TIME}_{RANDOM-CHARS}_default_docker.log

Trasmettere i log per servizio app

Per servizio app, usare la tabella seguente per altre informazioni su come trasmettere i log:

metodo Descrizione
Interfaccia della riga di comando di Azure az webapp log tail
Estensione del servizio app VSCode Fare clic con il pulsante destro del mouse sulla risorsa e selezionare Avvia i log di streaming

Abilitare la registrazione delle applicazioni per Funzioni di Azure (piano)

Vedere la procedura per abilitare la registrazione dell'host per servizio app

Abilitare la registrazione delle applicazioni per Funzioni di Azure (consumo)

Con un'app per le funzioni basata sul consumo, se si usa la registrazione fornita dall'oggetto contesto nel codice sorgente, tali log vengono forniti nella sezione Monitoraggio di ogni funzione. Il portale di Azure consente anche di trasmettere i log man mano che le richieste vengono inserite nella funzione.

Eseguire query sui log di Application Insights con il linguaggio di query Kusto

Quando si usa context.log in un'app per le funzioni o console.log in un'app Web e Application Insights è abilitato, tali log personalizzati vengono aggiunti alla risorsa di Application Insights nella tabella Di traccia . Se si antepone il log personalizzato con una stringa specifica, ad esempio JavaScript, è possibile cercare nella tabella Trace tutti i messaggi che contengono tale prefisso quando si vuole ridurre il log solo a quelle voci personalizzate, usando il linguaggio di query Kusto.

traces
| where message contains "JavaScript"

If you prefix your custom log with a specific string, such as `JavaScript`, you can search the Trace table for any messages that contain that prefix when you want to reduce your log to just those custom entries.

Sviluppo locale con Application Insights

Se si sta provando Application Insights eseguendo il codice in locale, che usa uno dei pacchetti npm di Application Insights, assicurarsi di chiamare il flush() metodo in modo che la registrazione venga inviata immediatamente ad Application Insights. Quando si visualizzano i log, tenere presente che l'operazione può richiedere ancora alcuni minuti prima che i log personalizzati siano disponibili in Application Insights.

Visualizzare i dati sugli errori dell'app in Application Insights

Visualizzare gli errori per le risorse monitorate di Application Insights.

View failures for Application Insights monitored resources.

Passaggi successivi