Condividi tramite


Monitorare Azure Resource Manager

L'articolo illustra:

  • I tipi di dati di monitoraggio che è possibile raccogliere per questo servizio.
  • Modi per analizzare i dati.

Nota

Se si ha già familiarità con questo servizio e/o il Monitoraggio di Azure e si vuole solo sapere come analizzare i dati di monitoraggio, vedere la sezione Analizza alla fine di questo articolo.

Quando si hanno applicazioni e processi di business critici che si basano sulle risorse di Azure, è necessario monitorare e ricevere avvisi per il sistema. Il servizio Monitoraggio di Azure raccoglie e aggrega metriche e log da ogni componente del sistema. Il Monitoraggio di Azure offre una visione sulla disponibilità, le prestazioni e la resilienza e notifica i problemi. È possibile usare il portale di Azure, PowerShell, l'interfaccia della riga di comando di Azure, l'API REST o le librerie client per configurare e visualizzare i dati di monitoraggio.

Informazioni dettagliate

Per alcuni servizi di Azure, nel portale di Azure è disponibile un dashboard di monitoraggio predefinito che fornisce un punto iniziale per il monitoraggio del servizio. Questi dashboard sono denominati informazioni dettagliate ed è possibile trovarli nell'hub di Insights del Monitoraggio di Azure nel portale di Azure.

Per altre informazioni, vedere Monitorare le informazioni dettagliate sul gruppo di risorse di Monitoraggio di Azure.

Tipi di risorsa

Azure usa il concetto di tipi di risorse e ID per identificare tutti gli elementi in una sottoscrizione. Il Monitoraggio di Azure organizza in modo analogo i dati di monitoraggio di base in metriche e log in base ai tipi di risorse, detti anche spazi dei nomi. Sono disponibili metriche e log diversi per diversi tipi di risorse. Il servizio potrebbe essere associato a più tipi di risorse.

I tipi di risorse fanno anche parte degli ID della risorsa per ogni risorsa in esecuzione in Azure. Ad esempio, un tipo di risorsa per una macchina virtuale è Microsoft.Compute/virtualMachines. Per un elenco dei servizi e dei relativi tipi di risorse associati, vedere Provider di risorse.

Per altre informazioni sui tipi di risorse per Monitoraggio di Azure, vedere Informazioni di riferimento sui dati di monitoraggio di Gestione risorse di Azure.

Archiviazione di dati

Per il Monitoraggio di Azure:

  • I dati delle metriche vengono archiviati dal database di metriche del Monitoraggio di Azure.
  • I dati di log vengono archiviati nell'archivio dei log del Monitoraggio di Azure. Log Analytics è uno strumento nel portale di Azure in grado di eseguire query su questo archivio.
  • Il log attività di Azure è un archivio separato con la propria interfaccia nel portale di Azure.

Facoltativamente, è possibile instradare i dati delle metriche e dei log attività all'archivio dei log di Monitoraggio di Azure. È quindi possibile usare Analisi dei log per eseguire query sui dati e correlarli con altri dati di log.

Molti servizi possono usare le impostazioni di diagnostica per inviare i dati delle metriche e dei log ad altre posizioni di archiviazione all'esterno di Monitoraggio di Azure. Gli esempi includono Archiviazione di Azure, sistemi partner ospitati e sistemi partner non Azure usando Hub eventi.

Per informazioni dettagliate su come il Monitoraggio di Azure archivia i dati, vedere la piattaforma dati del Monitoraggio di Azure.

Metriche della piattaforma del Monitoraggio di Azure

Il Monitoraggio di Azure fornisce metriche della piattaforma per la maggior parte dei servizi. Le metriche sono:

  • Definite singolarmente per ogni spazio dei nomi.
  • Archiviate in un database delle metriche di serie temporali del Monitoraggio di Azure.
  • Leggere e in grado di creare avvisi in tempo quasi reale.
  • Usate per tenere traccia delle prestazioni di una risorsa nel tempo.

Raccolta: il Monitoraggio di Azure raccoglie automaticamente le metriche della piattaforma. Non è richiesta alcuna configurazione.

Routing: in genere è possibile instradare le metriche della piattaforma verso i log del Monitoraggio di Azure/Log Analytics in modo da poterle interrogare con altri dati di log. Per altre informazioni, vedere impostazioni delle metriche di diagnostica. Per informazioni su come configurare le impostazioni di diagnostica per un servizio, vedere Creare impostazioni di diagnostica nel Monitoraggio di Azure.

Per un elenco di tutte le metriche che è possibile raccogliere per tutte le risorse nel Monitoraggio di Azure, vedere Metriche supportate nel Monitoraggio di Azure.

Per un elenco delle metriche disponibile per Gestione risorse, vedere Informazioni di riferimento sui dati di monitoraggio di Gestione risorse di Azure.

Quando si creano e gestiscono risorse in Azure, le richieste vengono orchestrate tramite il piano di controllo di Azure, Azure Resource Manager. Questo articolo descrive come monitorare il volume e la latenza delle richieste del piano di controllo effettuate ad Azure.

Con queste metriche è possibile osservare il traffico e la latenza per le richieste del piano di controllo in tutte le sottoscrizioni. Ad esempio, è ora possibile capire quando le richieste sono state limitate esaminando le richieste limitate. Determinare se l'operazione non è riuscita filtrando i codici di stato specifici ed esaminando gli errori del server.

Le metriche sono disponibili per un massimo di tre mesi (93 giorni) e tengono traccia solo delle richieste sincrone. Per uno scenario come la creazione di una macchina virtuale, le metriche non rappresentano le prestazioni o l'affidabilità dell'operazione asincrona a esecuzione prolungata.

Accesso alle metriche di Azure Resource Manager

È possibile accedere alle metriche del piano di controllo usando le API REST, gli SDK e il portale di Azure selezionando la metrica Azure Resource Manager. Per una panoramica su Monitoraggio di Azure, vedere Metriche di Monitoraggio di Azure.

Non è previsto alcun processo di consenso esplicito o iscrizione per accedere alle metriche del piano di controllo.

Per indicazioni su come recuperare un token di connessione e inviare richieste ad Azure, vedere Informazioni di riferimento sull'API REST di Azure.

Definizione di metrica

La definizione delle metriche di Azure Resource Manager in Monitoraggio di Azure è accessibile solo tramite la versione dell'API 2017-12-01-preview. Per recuperare la definizione, è possibile eseguire il frammento di codice seguente. Sostituire 00000000-0000-0000-0000-000000000000 con l'ID della sottoscrizione.

curl --location --request GET 'https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.insights/metricDefinitions?api-version=2017-12-01-preview&metricnamespace=microsoft.resources/subscriptions' \
--header 'Authorization: bearer {{bearerToken}}'

Questo frammento restituisce la definizione per lo schema delle metriche. In particolare, questo schema include le dimensioni che è possibile filtrare con l'API Monitoraggio.

Esempi di metriche

Ecco alcuni scenari che consentono di esplorare le metriche di Azure Resource Manager.

Eseguire query sulle metriche del piano di controllo del traffico e della latenza con il portale di Azure

Passare prima di tutto alla pagina Monitoraggio di Azure all'interno del portale:

Screenshot del passaggio alla pagina Monitoraggio del portale di Azure con Esplora metriche evidenziate.

Dopo aver selezionato Esplora metriche, selezionare una singola sottoscrizione quindi selezionare la metrica di Azure Resource Manager:

Screenshot della selezione di una singola sottoscrizione e della metrica di Azure Resource Manager nel portale di Azure.

Dopo aver selezionato Applica, è quindi possibile visualizzare le metriche del piano di controllo traffico o latenza con filtri e suddivisioni personalizzati:

Screenshot della visualizzazione delle metriche nel portale di Azure, che mostra le opzioni per filtrare e suddividere le dimensioni.

Eseguire query sulle metriche del piano di controllo del traffico e della latenza con l'API REST

Dopo l'autenticazione con Azure, è possibile effettuare una richiesta per recuperare le metriche del piano di controllo per la sottoscrizione. Nello script sostituire 00000000-0000-0000-0000-000000000000 con l'ID sottoscrizione. Lo script recupera la latenza media delle richieste, in secondi, e il conteggio totale delle richieste per l'intervallo di tempo di due giorni, suddiviso per intervalli di un giorno:

curl --location --request GET "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.insights/metrics?api-version=2021-05-01&interval=P1D&metricnames=Latency&metricnamespace=microsoft.resources/subscriptions&region=global&aggregation=average,count&timespan=2021-11-01T00:00:00Z/2021-11-03T00:00:00Z" \
--header "Authorization: bearer {{bearerToken}}"

Per le metriche di Azure Resource Manager, è possibile recuperare il conteggio del traffico usando la metrica latenza e includendo l'aggregazione "count". Viene visualizzata una risposta JSON per la richiesta:

{
    "cost": 5758,
    "timespan": "2021-11-01T00:00:00Z/2021-11-03T00:00:00Z",
    "interval": "P1D",
    "value": [
        {
            "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Insights/metrics/Latency",
            "type": "Microsoft.Insights/metrics",
            "name": {
                "value": "Latency",
                "localizedValue": "Latency"
            },
            "displayDescription": "Latency data for all requests to Azure Resource Manager",
            "unit": "Seconds",
            "timeseries": [
                {
                    "metadatavalues": [],
                    "data": [
                        {
                            "timeStamp": "2021-11-01T00:00:00Z",
                            "count": 1406.0,
                            "average": 0.19345163584637273
                        },
                        {
                            "timeStamp": "2021-11-02T00:00:00Z",
                            "count": 1517.0,
                            "average": 0.28294792353328935
                        }
                    ]
                }
            ],
            "errorCode": "Success"
        }
    ],
    "namespace": "microsoft.resources/subscriptions",
    "resourceregion": "global"
}

Se si desidera recuperare solo il numero di traffico, è possibile usare la metrica Traffico con l'aggregazione count:

curl --location --request GET 'https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.insights/metrics?api-version=2021-05-01&interval=P1D&metricnames=Traffic&metricnamespace=microsoft.resources/subscriptions&region=global&aggregation=count&timespan=2021-11-01T00:00:00Z/2021-11-03T00:00:00Z' \
--header 'Authorization: bearer {{bearerToken}}'

La risposta per la richiesta è:

{
    "cost": 2879,
    "timespan": "2021-11-01T00:00:00Z/2021-11-03T00:00:00Z",
    "interval": "P1D",
    "value": [
        {
            "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Insights/metrics/Traffic",
            "type": "Microsoft.Insights/metrics",
            "name": {
                "value": "Traffic",
                "localizedValue": "Traffic"
            },
            "displayDescription": "Traffic data for all requests to Azure Resource Manager",
            "unit": "Count",
            "timeseries": [
                {
                    "metadatavalues": [],
                    "data": [
                        {
                            "timeStamp": "2021-11-01T00:00:00Z",
                            "count": 1406.0
                        },
                        {
                            "timeStamp": "2021-11-02T00:00:00Z",
                            "count": 1517.0
                        }
                    ]
                }
            ],
            "errorCode": "Success"
        }
    ],
    "namespace": "microsoft.resources/subscriptions",
    "resourceregion": "global"
}

Per le dimensioni che supportano metriche, è necessario specificare il valore relativo alla dimensione per visualizzare i valori delle metriche corrispondenti. Ad esempio, se si desidera concentrarsi sulla latenza per le richieste riuscite a Gestione risorse, è necessario filtrare la dimensione StatusCodeClass con 2XX.

Per esaminare il numero di richieste effettuate nella sottoscrizione per le risorse di networking, ad esempio reti virtuali e servizi di bilanciamento del carico, è necessario filtrare la dimensione Spazio dei nomi per MICROSOFT. RETE.

Esame delle richieste limitate

Per visualizzare solo le richieste limitate, è necessario filtrare solo le risposte al codice di stato 429. Per le chiamate API REST, il filtro viene eseguito usando la proprietà $filter e la dimensione StatusCode aggiungendo: $filter=StatusCode eq '429' come illustrato alla fine della richiesta nel frammento di codice seguente:

curl --location --request GET 'https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.insights/metrics?api-version=2021-05-01&interval=P1D&metricnames=Latency&metricnamespace=microsoft.resources/subscriptions&region=global&aggregation=count,average&timespan=2021-11-01T00:00:00Z/2021-11-03T00:00:00Z&$filter=StatusCode%20eq%20%27429%27' \
--header 'Authorization: bearer {{bearerToken}}'

È anche possibile filtrare direttamente nel portale: Screenshot del filtro del codice di stato HTTP a 429 risposte solo nel portale di Azure.

Esame degli errori del server

Analogamente all'analisi delle richieste limitate, è possibile visualizzare tutte le richieste che hanno restituito un codice di risposta di errore del server filtrando solo le risposte 5xx. Per le chiamate API REST, il filtro viene eseguito usando la proprietà $filter e la dimensione StatusCodeClass aggiungendo: $filter=StatusCodeClass eq '5xx' come illustrato alla fine della richiesta nel frammento di codice seguente:

curl --location --request GET 'https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.insights/metrics?api-version=2021-05-01&interval=P1D&metricnames=Latency&metricnamespace=microsoft.resources/subscriptions&region=global&aggregation=count,average&timespan=2021-11-01T00:00:00Z/2021-11-03T00:00:00Z&$filter=StatusCodeClass%20eq%20%275xx%27' \
--header 'Authorization: bearer {{bearerToken}}'

È anche possibile filtrare gli errori generici del server all'interno del portale impostando la proprietà del filtro su StatusCodeClass e il valore su 5xx, in modo analogo a quanto fatto nell'esempio di limitazione.

Log delle risorse di Monitoraggio di Azure

I log delle risorse forniscono informazioni dettagliate sulle operazioni eseguite da una risorsa di Azure. I log vengono generati automaticamente, ma è necessario indirizzarli ai log di Monitoraggio di Azure per salvarli o eseguirne query. I log e sono organizzati in categorie. Uno spazio dei nomi può avere più categorie di log delle risorse che è possibile raccogliere.

Questo servizio non raccoglie i log delle risorse, ma è possibile trovare informazioni su di esse in Monitoraggio dei dati dalle risorse di Azure.

Finestra Log attività di Azure

Il log attività contiene eventi a livello di sottoscrizione che tengono traccia delle operazioni per ogni risorsa di Azure vista dall'esterno, ad esempio la creazione di una nuova risorsa o l'avvio di una macchina virtuale.

Raccolta: gli eventi del log attività vengono generati e raccolti automaticamente in un archivio separato per la visualizzazione nel portale di Azure.

Pianificazione percorso: è possibile inviare i dati del log attività ai log di Monitoraggio di Azure in modo da poterli analizzare insieme ad altri dati di log. Sono disponibili anche altre posizioni, ad esempio Archiviazione di Azure, Hub eventi di Azure e alcuni partner di monitoraggio Microsoft. Per altre informazioni su come instradare i log attività, vedere Informazioni generali sul log attività di Azure.

Analizzare i dati di monitoraggio

Sono disponibili molti strumenti per l'analisi dei dati di monitoraggio.

Strumenti di Monitoraggio di Azure

Il Monitoraggio di Azure supporta gli strumenti di base seguenti:

Gli strumenti che consentono una visualizzazione più complessa includono:

  • I dashboard che consentono di combinare tipi di dati diversi in un singolo riquadro nel portale di Azure.
  • Cartelle di lavoro, report personalizzabili che è possibile creare nel portale di Azure. Le cartelle di lavoro possono includere testo, metriche e query di log.
  • Grafana è una piattaforma aperta, ideale per i dashboard operativi. È possibile usare Grafana per creare dashboard che includano dati da più origini diverse dal Monitoraggio di Azure.
  • Power BI, un servizio di analisi aziendale che fornisce visualizzazioni interattive per un'ampia varietà di origini dati. È possibile configurare per Power BI per importare automaticamente i dati di log da Monitoraggio di Azure per sfruttare i vantaggi di queste visualizzazioni.

Strumenti di esportazione del Monitoraggio di Azure

È possibile ottenere dati dal Monitoraggio di Azure in altri strumenti usando i metodi seguenti:

Per iniziare a usare l'API REST per il Monitoraggio di Azure, vedere Procedura dettagliata per l'API REST del Monitoraggio di Azure.

Query Kusto

È possibile analizzare i dati di monitoraggio nell'archivio dei Log/Log Analytics del Monitoraggio di Azure usando il linguaggio di query Kusto (KQL).

Importante

Quando si seleziona Log dal menu del servizio nel portale, Analisi dei log si apre con l'ambito della query impostato sul servizio corrente. Questo ambito fa sì che le query di log includano solo i dati di tale tipo di risorsa. Se si vuole eseguire una query che includa dati di altri servizi di Azure, selezionare Log nel menu di Monitoraggio di Azure. Per i dettagli, vedere Ambito e intervallo di tempo delle query su log in Log Analytics di Monitoraggio di Azure.

Per un elenco delle query comuni per qualsiasi servizio, vedere l'interfaccia query di Analisi dei log.

Avvisi

Gli avvisi di Monitoraggio di Azure notificano in modo proattivo quando vengono riscontrate condizioni specifiche nei dati di monitoraggio. Consentono di identificare e risolvere i problemi del sistema prima che gli utenti li notino. Per altre informazioni, vedere Avvisi di Monitoraggio di Azure.

Esistono molte origini di avvisi comuni per le risorse di Azure. Per esempi di avvisi comuni per le risorse di Azure, vedere Query di avviso di log di esempio. Il sito Avvisi di base di Monitoraggio di Azure (AMBA) offre un metodo semi-automatizzato per implementare importanti avvisi, dashboard e linee guida per le metriche della piattaforma. Il sito si applica a un sottoinsieme di servizi di Azure in continua espansione, inclusi tutti i servizi che fanno parte della zona di destinazione di Azure.

Lo schema di avviso comune standardizza l'utilizzo delle notifiche di avviso di Monitoraggio di Azure. Per altre informazioni, vedere lo Schema degli avvisi comuni.

Tipi di avviso:

È possibile creare avvisi su qualsiasi metrica o fonte di dati di log nella piattaforma di dati di Monitoraggio di Azure. Esistono molti tipi diversi di avvisi a seconda dei servizi monitorati e dei dati di monitoraggio raccolti. Ogni tipo di avviso presenta vantaggi e svantaggi. Per altre informazioni, vedere Scegliere il tipo di avviso di monitoraggio corretto.

L'elenco seguente descrive i tipi di avvisi del Monitoraggio di Azure che è possibile creare:

  • Gli avvisi delle metriche valutano le metriche delle risorse a intervalli regolari. Le metriche possono essere metriche della piattaforma, metriche personalizzate, log di Monitoraggio di Azure convertiti in metriche o metriche di Application Insights. Gli avvisi delle metriche possono anche applicare più condizioni e soglie dinamiche.
  • Gli avvisi relativi ai log consentono agli utenti di utilizzare una query di Log Analytics per valutare i log delle risorse con una frequenza predefinita.
  • Gli avvisi dei log attività vengono attivati quando si verifica un nuovo evento del log attività che soddisfa le condizioni definite. Gli avvisi sull'integrità delle risorse e gli avvisi sull'integrità dei servizi sono avvisi di log delle attività che segnalano l'integrità dei servizi e delle risorse.

Alcuni servizi di Azure supportano anche avvisi di rilevamento intelligente, avvisi Prometheus o regole di avviso consigliate.

Per alcuni servizi, è possibile effettuare un monitoraggio su larga scala applicando la stessa regola di avviso delle metriche a più risorse dello stesso tipo presenti nella stessa area di Azure. Vengono inviate notifiche singole per ogni risorsa monitorata. Per i servizi e i cloud di Azure supportati, vedere Monitorare più risorse con una regola di avviso.

Nota

Se si crea o si esegue un'applicazione che viene eseguita nel servizio, Application Insights del Monitoraggio di Azure potrebbe offrire più tipi di avvisi.

Regole di avviso di Resource Manager

È possibile impostare avvisi per qualsiasi metrica, voce di log o voce di log attività elencata in Informazioni di riferimento sui dati di monitoraggio di Azure Resource Manager.

Elementi consigliati di Advisor

Per alcuni servizi, se si verificano condizioni critiche o modifiche imminenti durante le operazioni sulle risorse, viene visualizzato un avviso nella pagina Panoramica del servizio nel portale. È possibile trovare altre informazioni e correzioni consigliate per l'avviso in Consigli di Advisor in Monitoraggio nel menu a sinistra. Durante il normale funzionamento non viene visualizzato nessun consiglio di Advisor.

Per altre informazioni su Azure Advisor, vedere Informazioni generali su Azure Advisor.