Configurare l'esportazione di flusso dei dati di telemetria di diagnostica - Database SQL di Azure e Istanza gestita di SQL di Azure

Si applica a:Database SQL di AzureIstanza gestita di SQL di Azure

In questo articolo vengono illustrate le metriche delle prestazioni e i log delle risorse per il database SQL di Azure che è possibile esportare in una delle diverse destinazioni per l'analisi. Si apprenderà come configurare l'esportazione di flusso di questi dati di telemetria di diagnostica tramite il portale di Azure, PowerShell, l'interfaccia della riga di comando di Azure, l'API REST e i modelli di Azure Resource Manager.

Verranno inoltre fornite informazioni sulle destinazioni a cui è possibile trasmettere i dati di telemetria di diagnostica e su come scegliere tra queste opzioni. Le opzioni di destinazione includono:

Dati di telemetria di diagnostica per l'esportazione

Il più importante tra i dati di telemetria di diagnostica che è possibile esportare è il log di Intelligent Insights (SQLInsights) (non correlato a SQL Insights di Monitoraggio di Azure (anteprima)). Intelligent Insights usa l'intelligenza integrata per monitorare in modo continuativo l'utilizzo del database grazie all'intelligenza artificiale e rilevare gli eventi che possono causare interruzioni del funzionamento e una riduzione delle prestazioni. Dopo aver rilevato questo tipo di eventi, viene eseguita un'analisi dettagliata che genera un log di Intelligent Insights con una valutazione intelligente del problema. Questa valutazione è costituita da un'analisi della causa radice del problema di prestazioni del database e, dove possibile, da raccomandazioni per il miglioramento delle prestazioni. È necessario configurare l'esportazione di flusso di questo log per visualizzarne il contenuto.

Oltre all'esportazione di flusso del log di Intelligent Insights, è anche possibile esportare varie metriche delle prestazioni e log di database aggiuntivi. La tabella seguente descrive le metriche delle prestazioni e i log delle risorse che è possibile configurare per l'esportazione di flusso in una delle diverse destinazioni. Questi dati di telemetria di diagnostica possono essere configurati per database singoli, pool elastici e database in pool, istanze gestite e database di istanza.

Dati di telemetria di diagnostica per i database Supporto del database SQL di Azure Supporto per Istanza gestita di database SQL di Azure
Metriche di base: contiene la percentuale DTU/CPU, limite DTU/CPU, percentuale lettura dati fisici, percentuale scrittura log, riuscito/non riuscito/bloccato dalle connessioni firewall, percentuale sessioni, percentuale ruoli di lavoro, risorsa di archiviazione, percentuale di archiviazione, percentuale di archiviazione XTP. No
Metriche avanzate di istanze e app: contiene i dati del database di sistema tempdb e le dimensioni del file di log e la percentuale di file di log usati di tempdb. No
QueryStoreRuntimeStatistics: contiene le informazioni sulle statistiche di runtime delle query, ad esempio l'utilizzo della CPU e le statistiche sulla durata delle query.
QueryStoreWaitStatistics: contiene le informazioni sulle statistiche di attesa delle query (le cause di attesa delle query) ad esempio CPU, LOG o LOCKING.
Errors: contiene le informazioni sugli errori SQL in un database.
DatabaseWaitStatistics: contiene informazioni sul tempo di attesa trascorso da un database per tipi di attesa diversi. No
Timeouts: contiene informazioni sui timeout in un database. No
Blocks: contiene informazioni sugli eventi di blocco in un database. No
Deadlock: contiene informazioni sugli eventi deadlock in un database. No
AutomaticTuning: contiene informazioni sui consigli di ottimizzazione automatica per un database. No
SQLInsights: contiene Intelligent Insights sulle prestazioni di un database. Per altre informazioni, vedere Intelligent Insights.
Gestione del carico di lavoro: disponibile solo per Azure Synapse. Per altre informazioni, vedere Azure Synapse Analytics - Monitoraggio del portale di gestione del carico di lavoro No Numero

Nota

Non è possibile configurare le impostazioni di diagnostica per i database di sistema, ad esempio database master, msdb, model, di risorse e tempdb.

Destinazioni dell'esportazione di flusso

Questi dati di telemetria di diagnostica possono essere trasmessi a una delle risorse di Azure seguenti per l'analisi.

  • area di lavoro Log Analytics:

    I dati trasmessi a un'area di lavoro Log Analytics possono essere usati da Analisi SQL. Analisi SQL è una soluzione di monitoraggio solo cloud che fornisce un monitoraggio intelligente dei database che include i report delle prestazioni, gli avvisi e i consigli di prevenzione dei rischi. I dati trasmessi a un'area di lavoro Log Analytics possono essere analizzati con altri dati di monitoraggio raccolti e consentono anche di usare altre funzionalità di Monitoraggio di Azure, come ad esempio avvisi e visualizzazioni

  • Hub eventi di Azure:

    I dati trasmessi a Hub eventi di Azure offrono le funzionalità seguenti:

    • Trasmissione di log a sistemi di registrazione e telemetria di terze parti: è possibile trasmettere tutte le metriche e i log delle risorse a un singolo hub eventi per inviare pipe di dati registro a uno strumento SIEM o di analisi dei log di terze parti.
    • Creazione di una piattaforma di telemetria e registrazione personalizzata: la natura di pubblicazione-sottoscrizione altamente scalabile di Hub eventi di Azure consente di inserire in modo flessibile le metriche e i log delle risorse in una piattaforma di telemetria personalizzata. Per altre informazioni, vedere Hub eventi di Azure.
    • Visualizzazione dello stato di integrità del servizio mediante la trasmissione di dati a Power BI: Hub eventi, Analisi di flusso e Power BI consentono di trasformare i dati di diagnostica in informazioni quasi in tempo reale sui servizi di Azure. Per i dettagli su questa soluzione, vedere Analisi di flusso e Power BI: una dashboard di analisi in tempo reale per lo streaming dei dati.
  • Archiviazione di Azure:

    I dati trasmessi ad Archiviazione di Azure consentono di archiviare grandi quantità di dati di telemetria di diagnostica per un costo nettamente inferiore rispetto alle due opzioni di trasmissione precedenti.

Questi dati di telemetria di diagnostica trasmessi a una di queste destinazioni possono essere usati per misurare l'utilizzo delle risorse e le statistiche di esecuzione delle query per semplificare il monitoraggio delle prestazioni.

Diagram shows many SQL databases and databases in managed instances sending telemetry to Azure Diagnostics.

Abilitare e configurare l'esportazione di flusso dei dati di telemetria di diagnostica

È possibile abilitare e gestire le metriche e la registrazione dei dati di telemetria di diagnostica usando uno dei metodi seguenti:

  • Portale di Azure
  • PowerShell
  • Interfaccia della riga di comando di Azure
  • API REST di Monitoraggio di Azure
  • Modello di Azure Resource Manager

Nota

Per abilitare la trasmissione dei log di controllo dei dati di telemetria di sicurezza, vedere Configurare il controllo per il database e i log di controllo nei log di Monitoraggio di Azure e Hub eventi di Azure.

Configurare l'esportazione di flusso dei dati di telemetria di diagnostica

È possibile usare il menu delle impostazioni di diagnostica nel portale di Azure per abilitare e configurare la trasmissione dei dati di telemetria di diagnostica. È anche possibile usare PowerShell, l'interfaccia della riga di comando di Azure, l'API REST e i modelli di Resource Manager per configurare la trasmissione dei dati di telemetria di diagnostica. È possibile impostare le destinazioni seguenti per trasmettere i dati di telemetria di diagnostica: Archiviazione di Azure, Hub eventi di Azure e log di Monitoraggio di Azure.

Importante

L'esportazione di flusso dei dati di telemetria di diagnostica non è abilitata per impostazione predefinita.

Selezionare una delle schede seguenti per istruzioni dettagliate per configurare l'esportazione di flusso dei dati di telemetria di diagnostica nel portale di Azure e per gli script per eseguire la stessa operazione con PowerShell e l'interfaccia della riga di comando di Azure.

Pool elastici nel database SQL di Azure

È possibile impostare una risorsa di pool elastico per raccogliere i dati di telemetria di diagnostica seguenti:

Conto risorse Dati di telemetria di monitoraggio
Pool elastico Metriche di base contiene percentuale eDTU/CPU, limite eDTU/CPU, limite eDTU, percentuale lettura dati fisici, percentuale scrittura log, percentuale sessioni, percentuale ruoli di lavoro, risorsa di archiviazione, percentuale di archiviazione, limite di archiviazione, percentuale di archiviazione XTP.

Per configurare il flusso di dati di telemetria di diagnostica per i pool elastici e i database in pool, è necessario configurare separatamente ciascuno di essi:

  • Abilitare il flusso di dati di telemetria di diagnostica per un pool elastico
  • Abilitare il flusso di dati di telemetria di diagnostica per ciascun database in un pool elastico

Il contenitore del pool elastico ha dati di telemetria specifici separati dai dati di telemetria di ogni singolo database in pool.

Per abilitare il flusso di dati di telemetria della diagnostica per una risorsa di pool elastico, procedere come segue:

  1. Passare alla risorsa di pool elastico nel portale di Azure.

  2. Selezionare Impostazioni di diagnostica.

  3. Selezionare Abilita diagnostica se non ci sono impostazioni precedenti oppure selezionare Modifica l'impostazione per modificare un'impostazione precedente.

    Enable diagnostics for elastic pools.

  4. Immettere un nome di impostazione per il proprio riferimento.

  5. Selezionare una risorsa di destinazione per il flusso di dati di diagnostica: Archivia in un account di archiviazione, Streaming in un hub eventi o Invia a Log Analytics.

  6. Per l'analisi dei log, selezionare Configura e creare una nuova area di lavoro selezionando +Crea nuova area di lavoro oppure selezionarne una esistente.

  7. Selezionare la casella di controllo per la telemetria di diagnostica del pool elastico: metriche Di base. Configure diagnostics for elastic pools.

  8. Seleziona Salva.

  9. Configurare inoltre il flusso i dati di telemetria di diagnostica per ogni database all'interno del pool elastico da monitorare seguendo i passaggi descritti nella sezione successiva.

Importante

Oltre a configurare i dati di telemetria di diagnostica per un pool elastico, è anche necessario configurare i dati di telemetria di diagnostica per ogni database nel pool elastico.

Database nel database SQL di Azure

È possibile impostare una risorsa del database per raccogliere i dati di telemetria della diagnostica seguenti:

Conto risorse Dati di telemetria di monitoraggio
Database singolo o in pool Metriche di base contiene percentuale DTU, DTU usata, limite DTU, percentuale CPU, percentuale lettura dati fisici, percentuale scrittura log, riuscito/non riuscito/bloccato dalle connessioni firewall, percentuale sessioni, percentuale ruoli di lavoro, risorsa di archiviazione, percentuale di archiviazione, percentuale di archiviazione XTP, deadlock

Per abilitare il flusso di dati di telemetria della diagnostica per un database singolo o in pool, seguire questa procedura:

  1. Passare alla risorsa di database SQL di Azure.

  2. Selezionare Impostazioni di diagnostica.

  3. Selezionare Abilita diagnostica se non ci sono impostazioni precedenti oppure selezionare Modifica l'impostazione per modificare un'impostazione precedente. È possibile creare fino a tre connessioni parallele per il flusso di dati di telemetria diagnostica.

  4. Selezionare Aggiungi impostazione di diagnostica per configurare flussi paralleli di dati di diagnostica in più risorse.

    Enable diagnostics for single and pooled databases.

  5. Immettere un nome di impostazione per il proprio riferimento.

  6. Selezionare una risorsa di destinazione per il flusso di dati di diagnostica: Archivia in un account di archiviazione, Streaming in un hub eventi o Invia a Log Analytics.

  7. Per un'esperienza di monitoraggio standard, basato su eventi, selezionare le seguenti caselle di controllo per la telemetria di log di diagnostica del database: SQLInsights, AutomaticTuning, QueryStoreRuntimeStatistics, QueryStoreWaitStatistics, Errors, DatabaseWaitStatistics, Timeouts, Blocks, e Deadlocks.

  8. Per un'esperienza di monitoraggio avanzata, basata su 1 minuto, selezionare la casella di controllo per le metriche Di base.

    Configure diagnostics for Azure SQL Database.

  9. Seleziona Salva.

  10. Ripetere questi passaggi per ogni database che si desidera monitorare.

Suggerimento

Ripetere questi passaggi per ogni database singolo e in pool che si desidera monitorare.

Istanze in Istanza gestita di SQL di Azure

È possibile impostare una risorsa di istanza gestita per raccogliere i dati di telemetria della diagnostica seguenti:

Conto risorse Dati di telemetria di monitoraggio
Istanza gestita ResourceUsageStats contiene il numero di vCore, la percentuale CPU media, le richieste IO, i byte letti/scritti, lo spazio di archiviazione riservato e lo spazio di archiviazione usato.

Per configurare il flusso di dati di telemetria di diagnostica per le istanze gestite e i database database dell'istanza, è necessario configurare separatamente ciascuno di essi:

  • Abilitare il flusso di dati di telemetria della diagnostica per l'istanza gestita
  • Abilitare il flusso di dati di telemetria di diagnostica per ciascun database dell'istanza

Il contenitore dell'istanza gestita ha i propri dati di telemetria separati dai dati di telemetria di ogni database dell'istanza.

Per abilitare il flusso di dati di telemetria della diagnostica per una risorsa di istanza gestita, seguire questa procedura:

  1. Passare alla risorsa di istanza gestita nel portale di Azure.

  2. Selezionare Impostazioni di diagnostica.

  3. Selezionare Abilita diagnostica se non ci sono impostazioni precedenti oppure selezionare Modifica l'impostazione per modificare un'impostazione precedente.

    Enable diagnostics for managed instance.

  4. Immettere un nome di impostazione per il proprio riferimento.

  5. Selezionare una risorsa di destinazione per il flusso di dati di diagnostica: Archivia in un account di archiviazione, Streaming in un hub eventi o Invia a Log Analytics.

  6. Per l'analisi dei log, selezionare Configura e creare una nuova area di lavoro selezionando +Crea nuova area di lavoro oppure usarne una esistente.

  7. Selezionare la casella di controllo per i dati di telemetria di diagnostica dell'istanza: ResourceUsageStats.

    Configure diagnostics for managed instance.

  8. Selezionare Salva.

  9. Configurare inoltre il flusso dati di telemetria di diagnostica per ogni database dell'istanza all'interno dell'istanza gestita da monitorare seguendo i passaggi descritti nella sezione successiva.

Importante

Oltre a configurare i dati di telemetria di diagnostica per un'istanza gestita, è anche necessario configurare i dati di telemetria di diagnostica per ogni database dell'istanza.

Database in Istanza gestita di SQL di Azure

È possibile impostare una risorsa del database dell'istanza per raccogliere i dati di telemetria di diagnostica seguenti:

Conto risorse Dati di telemetria di monitoraggio
Database dell'istanza Le statistiche di runtime di Query Store e le statistiche relative alle attese di Query Store contengono dati di Query Store del database. SQL Insights contiene dati di Intelligent Insights del database. Gli errori contengono i dati degli errori di questo database.

Per abilitare il flusso di dati di telemetria di diagnostica per un database dell'istanza, seguire questa procedura:

  1. Passare alla risorsa del database dell'istanza all'interno dell'istanza gestita.

  2. Selezionare Impostazioni di diagnostica.

  3. Selezionare Abilita diagnostica se non ci sono impostazioni precedenti oppure selezionare Modifica l'impostazione per modificare un'impostazione precedente.

    • È possibile creare fino a tre (3) connessioni parallele per il flusso di dati di telemetria diagnostica.
    • Selezionare +Add diagnostic setting (Aggiungi impostazione di diagnostica) per configurare flussi paralleli di dati di diagnostica in più risorse.

    Enable diagnostics for instance databases.

  4. Immettere un nome di impostazione per il proprio riferimento.

  5. Selezionare una risorsa di destinazione per il flusso di dati di diagnostica: Archivia in un account di archiviazione, Streaming in un hub eventi o Invia a Log Analytics.

  6. Selezionare le caselle di controllo per la telemetria di diagnostica del database: SQLInsights, QueryStoreRuntimeStatistics, QueryStoreWaitStatistics e Errors. Configure diagnostics for instance databases.

  7. Seleziona Salva.

  8. Ripetere questi passaggi per ogni database dell'istanza che si vuole monitorare.

Suggerimento

Ripetere questi passaggi per ogni database dell'istanza che si vuole monitorare.

Trasmettere un flusso in Analisi SQL.

Le metriche e i log delle risorse del database SQL di Azure e di Istanza gestita di SQL di Azure trasmessi in un'area di lavoro Log Analytics possono essere usati da Analisi SQL di Azure. Analisi SQL di Azure è una soluzione cloud che monitora le prestazioni dei database singoli, dei pool elastici e dei database in pool, delle istanze gestite e dei database dell'istanza su larga scala e tra più abbonamenti. Può aiutare a raccogliere e visualizzare le metriche sulle prestazioni e ha la funzionalità di intelligenza integrata per la risoluzione dei problemi.

Azure SQL Analytics Overview.

Panoramica dell'installazione

È possibile monitorare una raccolta di database e raccolte di database con Analisi SQL di Azure seguendo questa procedura:

  1. Creare una soluzione Analisi SQL di Azure da Azure Marketplace.
  2. Creare un'area di lavoro Log Analytics nella soluzione.
  3. Configurare i database per la trasmisisone dei dati di telemetria diagnostica nell'area di lavoro.

È possibile configurare l'esportazione di flusso di questi dati di telemetria di diagnostica usando l'opzione predefinita Invia a Log Analytics nella scheda delle impostazioni di diagnostica del portale di Azure. È anche possibile abilitare la trasmissione a un'area di lavoro Log Analytics usando le impostazioni di diagnostica tramite i cmdlet PowerShell, l'interfaccia della riga di comando di Azure, l'API REST di Monitoraggio di Azure o i modelli di Resource Manager.

Creare una risorsa di Analisi SQL di Azure

  1. Cercare Analisi SQL di Azure in Azure Marketplace e selezionarla.

    Screenshot showing how to search for Azure SQL Analytics in portal.

  2. Selezionare Crea nella schermata di panoramica della soluzione.

  3. Compilare il modulo di Analisi SQL di Azure con le informazioni aggiuntive necessarie: nome dell'area di lavoro, sottoscrizione, gruppo di risorse, posizione e livello di prezzo.

    Screenshot showing how to configure Azure SQL Analytics in portal.

  4. Selezionare OK per confermare, quindi Crea.

Configurare la risorsa per registrare le metriche e i log delle risorse

È necessario configurare separatamente il flusso di dati di telemetria di diagnostica per database singoli e in pool, pool elastici, istanze gestite e database dell'istanza. Il modo più semplice per configurare la posizione in cui i una risorsa registra le metriche è con il portale di Azure. Per informazioni dettagliate sulla procedura, vedere Configurare l'esportazione di flusso dei dati di telemetria di diagnostica.

Usare Analisi SQL di Azure per il monitoraggio e gli avvisi

È possibile utilizzare SQL Analytics come un dashboard gerarchico per visualizzare le risorse del database.

Trasmettere un flusso a Hub eventi

È possibile trasmettere le metriche e i log delle risorse del database SQL di Azure e di Istanza gestita di SQL di Azure in Hub eventi tramite l'opzione integrata Trasmetti a un hub eventi nel portale di Azure. È anche possibile abilitare l'ID regola del bus di servizio usando le impostazioni di diagnostica tramite i cmdlet PowerShell, l'interfaccia della riga di comando di Azure o l'API REST di Monitoraggio di Azure. Assicurarsi che l'hub eventi si trovi nella stessa area del database e server.

Cosa fare con le metriche e i log delle risorse in Hub eventi

Dopo aver eseguito lo streaming dei dati selezionati in Hub eventi, sarà possibile iniziare a valutare scenari di monitoraggio avanzati. Hub eventi funge da ingresso per una pipeline di eventi. Dopo aver raccolto i dati in un hub eventi, potranno essere trasformati e archiviati usando qualsiasi provider di analisi in tempo reale o adattatore di archiviazione. Hub eventi separa la produzione di un flusso di eventi dal consumo di tali eventi. In questo modo, i consumer eventi possono accedere agli eventi in una pianificazione personalizzata. Per altre informazioni sugli hub eventi, vedere:

È possibile usare le metriche tramesse in hub eventi per:

  • Visualizzare l'integrità del servizio mediante la trasmissione di dati sul "percorso critico" a Power BI

    Con Hub eventi, Analisi di flusso e Power BI è possibile trasformare facilmente i dati di metriche e diagnostica in informazioni quasi in tempo reale sui servizi di Azure. Per una panoramica della configurazione di un hub eventi, dell'elaborazione dei dati con Analisi di flusso e dell'uso di Power BI come output, vedere Analisi di flusso e Power BI.

  • Eseguire lo streaming dei log in stream di registrazione e telemetria di terze parti

    Usando lo streaming di Hub eventi è possibile trasmettere le metriche e i log delle risorse a diverse soluzioni di monitoraggio e analisi dei log di terze parti.

  • Creare una piattaforma di telemetria e registrazione personalizzata

    Si dispone già di una piattaforma di telemetria personalizzata o si intende crearne una? La natura altamente scalabile di pubblicazione-sottoscrizione dell'hub eventi offre flessibilità nell'inserimento delle metriche e dei log delle risorse. Per altre informazioni, vedere Hub eventi di Azure.

Eseguire lo streaming in Archiviazione di Azure

È possibile archiviare le metriche e i log delle risorse in Archiviazione di Azure usando l'opzione Archivia in un account di archiviazione integrata nel portale di Azure. È anche possibile abilitare Archiviazione usando le impostazioni di diagnostica tramite i cmdlet PowerShell, l'interfaccia della riga di comando di Azure o l'API REST di Monitoraggio di Azure.

Schema delle metriche e dei log delle risorse nell'account di archiviazione

Dopo aver configurato la raccolta delle metriche e dei log delle risorse, verrà creato un contenitore di archiviazione nell'account di archiviazione selezionato quando sono disponibili le prime righe di dati. La struttura dei BLOB è:

insights-{metrics|logs}-{category name}/resourceId=/SUBSCRIPTIONS/{subscription ID}/ RESOURCEGROUPS/{resource group name}/PROVIDERS/Microsoft.SQL/servers/{resource_server}/ databases/{database_name}/y={four-digit numeric year}/m={two-digit numeric month}/d={two-digit numeric day}/h={two-digit 24-hour clock hour}/m=00/PT1H.json

O, più semplicemente:

insights-{metrics|logs}-{category name}/resourceId=/{resource Id}/y={four-digit numeric year}/m={two-digit numeric month}/d={two-digit numeric day}/h={two-digit 24-hour clock hour}/m=00/PT1H.json

Ad esempio, un nome del BLOB per l'opzione Metriche di base potrebbe essere:

insights-metrics-minute/resourceId=/SUBSCRIPTIONS/s1id1234-5679-0123-4567-890123456789/RESOURCEGROUPS/TESTRESOURCEGROUP/PROVIDERS/MICROSOFT.SQL/ servers/Server1/databases/database1/y=2016/m=08/d=22/h=18/m=00/PT1H.json

Un nome di BLOB per archiviare i dati da un pool elastico è simile a:

insights-{metrics|logs}-{category name}/resourceId=/SUBSCRIPTIONS/{subscription ID}/ RESOURCEGROUPS/{resource group name}/PROVIDERS/Microsoft.SQL/servers/{resource_server}/ elasticPools/{elastic_pool_name}/y={four-digit numeric year}/m={two-digit numeric month}/d={two-digit numeric day}/h={two-digit 24-hour clock hour}/m=00/PT1H.json

Criteri di conservazione dei dati e prezzi

Se si seleziona Hub eventi o un account di archiviazione, è possibile specificare criteri di conservazione. Questi criteri eliminano i dati antecedenti a un periodo selezionato. Se si specifica Log Analytics, i criteri di conservazione dipendono dal piano tariffario selezionato. In questo caso, le unità gratuite fornite di inserimento dati possono consentire di monitorare gratuitamente più database ogni mese. Qualsiasi utilizzo dei dati di telemetria di diagnostica e di utilizzo che superano le unità gratuite può generare dei costi.

Importante

I database attivi con carichi di lavoro più pesanti inseriscono più dati rispetto ai database inattivi. Per altre informazioni, vedere Prezzi di Log Analytics.

Se si usa Analisi SQL di Azure, è possibile monitorare il consumo di inserimento dati selezionando Area di lavoro di OMS nel menu di spostamento di Analisi SQL di Azure e quindi scegliendo Utilizzo e Costi stimati.

Le metriche e i log disponibili

I dati di telemetria di monitoraggio disponibili per database singoli, database in pool, pool elastici, istanze gestite e database di istanza sono illustrati in questa sezione dell'articolo. I dati di telemetria di monitoraggio raccolti all'interno di Analisi SQL possono essere usati per l'analisi personalizzata e lo sviluppo di applicazioni mediante il linguaggio delle query di log di Monitoraggio di Azure.

Metriche di base

Fare riferimento alle tabelle seguenti per informazioni dettagliate sulle metriche di base per risorsa.

Nota

L'opzione Metriche di base era precedentemente nota come Tutte le metriche. La modifica apportata è stata apportata solo alla denominazione e non è stata apportata alcuna modifica alle metriche monitorate. Questa modifica è stata avviata per consentire l'introduzione di categorie di metriche aggiuntive in futuro.

Metriche di base per i pool elastici

Conto risorse Metriche
Pool elastico Percentuale eDTU, eDTU usata, limite eDTU, percentuale CPU, percentuale lettura dati fisici, percentuale scrittura log, percentuale sessioni, percentuale ruoli di lavoro, risorsa di archiviazione, percentuale di archiviazione, limite di archiviazione, percentuale di archiviazione XTP

Metriche di base per database singoli e in pool

Conto risorse Metriche
Database singolo e in pool Percentuale DTU, DTU usata, limite DTU, percentuale CPU, percentuale lettura dati fisici, percentuale scrittura log, riuscito/non riuscito/bloccato dalle connessioni firewall, percentuale sessioni, percentuale ruoli di lavoro, risorsa di archiviazione, percentuale di archiviazione, percentuale di archiviazione XTP, deadlock

Metriche avanzate

Fare riferimento alla tabella seguente per informazioni dettagliate sulle metriche avanzate.

Metrica Nome visualizzato per la metrica Descrizione
sql_instance_cpu_percent 1 Percentuale di CPU dell'istanza SQL Utilizzo della CPU da parte di tutti i carichi di lavoro degli utenti e del sistema, misurato dal sistema operativo
sql_instance_memory_percent 1 Percentuale di memoria dell'istanza SQL Utilizzo della memoria da parte dell'istanza del motore di database, misurato dal sistema operativo
tempdb_data_size 2 tempdb Data File Size Kilobytes Dimensioni file dati tempdb in kilobyte.
tempdb_log_size 2 tempdb Log File Size Kilobytes Dimensioni file di log tempdb in kilobyte.
tempdb_log_used_percent 2 Percentuale log tempdb utilizzata Percentuale log tempdb utilizzata.

1 Questa metrica è disponibile per i database che usano il modello di acquisto vCore con 2 vCore e oltre o 200 DTU e oltre per i modelli di acquisto basati su DTU.

2 Questa metrica è disponibile per i database che usano il modello di acquisto vCore con 2 vCore e oltre o 200 DTU e oltre per i modelli di acquisto basati su DTU. Questa metrica non è attualmente disponibile per i pool SQL di Synapse Analytics.

Nota

Le metriche di base e avanzate potrebbero non essere disponibili per i database che sono stati inattivi per 7 giorni o più.

Log di base

I dettagli dei dati di telemetria disponibili per tutti i log sono illustrati nelle tabelle seguenti. Per altre informazioni, vedere i dati di telemetria di diagnostica supportati.

Statistiche d'uso delle risorse per le istanze gestite

Proprietà Descrizione
TenantId ID del tenant.
SourceSystem Always: Azure
TimeGenerated [UTC] Timestamp di quando è stato registrato il log
Type Always: AzureDiagnostics
ResourceProvider Nome del provider di risorse. Always: MICROSOFT.SQL
Categoria Nome della categoria. Sempre: ResourceUsageStats
Conto risorse Nome della risorsa
ResourceType Nome del tipo di risorsa. Sempre: MANAGEDINSTANCES
SubscriptionId GUID dell'abbonamento per il database
ResourceGroup Nome del gruppo di risorse per il database
LogicalServerName_s Nome dell'istanza gestita
ResourceId URI risorsa
SKU_s SKU del prodotto di Istanza gestita di SQL
virtual_core_count_s Numero di vCore disponibili
avg_cpu_percent_s Percentuale CPU Media
reserved_storage_mb_s Capacità di archiviazione riservata nell'istanza gestita
storage_space_used_mb_s Spazio di archiviazione usato nell'istanza gestita
io_requests_s Numero IOPS
io_bytes_read_s Byte IOPS letti
io_bytes_written_s Byte di IOPS scritti

Statistiche di runtime di Query Store

Proprietà Descrizione
TenantId ID del tenant.
SourceSystem Always: Azure
TimeGenerated [UTC] Timestamp di quando è stato registrato il log
Type Always: AzureDiagnostics
ResourceProvider Nome del provider di risorse. Always: MICROSOFT.SQL
Categoria Nome della categoria. Always: QueryStoreRuntimeStatistics
OperationName Nome dell'operazione. Always: QueryStoreRuntimeStatisticsEvent
Conto risorse Nome della risorsa
ResourceType Nome del tipo di risorsa. Always: SERVERS/DATABASES
SubscriptionId GUID dell'abbonamento per il database
ResourceGroup Nome del gruppo di risorse per il database
LogicalServerName_s Nome del server per il database
ElasticPoolName_s Nome del pool elastico per il database, se presente
DatabaseName_s Nome del database
ResourceId URI risorsa
query_hash_s Hash di query
query_plan_hash_s Hash del piano di query
statement_sql_handle_s Punto di controllo dell'istruzione SQL
interval_start_time_d Datetimeoffset iniziale dell'intervallo in numero di tick dal 1900-1-1
interval_end_time_d Datetimeoffset finale dell'intervallo in numero di tick dal 1900-1-1
logical_io_writes_d Numero totale di scritture di I/O logiche
max_logical_io_writes_d Numero massimo di scritture di I/O logiche per esecuzione
physical_io_reads_d Numero totale di letture di I/O fisiche
max_physical_io_reads_d Numero massimo letture di I/O logiche per esecuzione
logical_io_reads_d Numero totale di letture di I/O logiche
max_logical_io_reads_d Numero massimo letture di I/O logiche per esecuzione
execution_type_d Tipo di esecuzione
count_executions_d Numero di esecuzioni della query
cpu_time_d Tempo totale della CPU usato dalla query in microsecondi
max_cpu_time_d Consumer massimo del tempo di CPU di una singola esecuzione in microsecondi
dop_d Somma dei gradi di parallelismo
max_dop_d Massimo grado parallelismo usato per una singola esecuzione
rowcount_d Numero di righe totali restituite
max_rowcount_d Numero massimo di righe restituite in una singola esecuzione
query_max_used_memory_d Quantità totale di memoria usata in KB
max_query_max_used_memory_d Quantità massima di memoria usata da una singola esecuzione in KB
duration_d Tempo di esecuzione totale in microsecondi
max_duration_d Tempo massimo di esecuzione di una singola esecuzione
num_physical_io_reads_d Numero totale di letture fisiche
max_num_physical_io_reads_d Numero massimo di scritture fisiche per esecuzione
log_bytes_used_d Quantità totale di byte di log usati
max_log_bytes_used_d Quantità massima di byte di log usati per esecuzione
query_id_d ID della query in Query Store
plan_id_d ID del piano in Query Store

Altre informazioni sui dati delle statistiche di runtime di Query Store.

Statistiche relative alle attese di Query Store

Proprietà Descrizione
TenantId ID del tenant.
SourceSystem Always: Azure
TimeGenerated [UTC] Timestamp di quando è stato registrato il log
Type Always: AzureDiagnostics
ResourceProvider Nome del provider di risorse. Always: MICROSOFT.SQL
Categoria Nome della categoria. Always: QueryStoreWaitStatistics
OperationName Nome dell'operazione. Always: QueryStoreWaitStatisticsEvent
Conto risorse Nome della risorsa
ResourceType Nome del tipo di risorsa. Always: SERVERS/DATABASES
SubscriptionId GUID dell'abbonamento per il database
ResourceGroup Nome del gruppo di risorse per il database
LogicalServerName_s Nome del server per il database
ElasticPoolName_s Nome del pool elastico per il database, se presente
DatabaseName_s Nome del database
ResourceId URI risorsa
wait_category_s Categoria dell'attesa
is_parameterizable_s La query è parametrizzabile
statement_type_s Tipo di istruzione
statement_key_hash_s Hash della chiave di istruzione
exec_type_d Tipo di esecuzione
total_query_wait_time_ms_d Tempo di attesa totale della query nella categoria di attesa specifica
max_query_wait_time_ms_d Tempo di attesa massimo della query nella singola esecuzione nella categoria di attesa specifica
query_param_type_d 0
query_hash_s Hash di query in Query Store
query_plan_hash_s Hash del piano di query in Query Store
statement_sql_handle_s Handle di istruzione in Query Store
interval_start_time_d Datetimeoffset iniziale dell'intervallo in numero di tick dal 1900-1-1
interval_end_time_d Datetimeoffset finale dell'intervallo in numero di tick dal 1900-1-1
count_executions_d Numero di esecuzioni della query
query_id_d ID della query in Query Store
plan_id_d ID del piano in Query Store

Altre informazioni sui dati delle statistiche di attesa di Query Store.

Set di dati di errori

Proprietà Descrizione
TenantId ID del tenant.
SourceSystem Always: Azure
TimeGenerated [UTC] Timestamp di quando è stato registrato il log
Type Always: AzureDiagnostics
ResourceProvider Nome del provider di risorse. Always: MICROSOFT.SQL
Categoria Nome della categoria. Always: Errors
OperationName Nome dell'operazione. Always: ErrorEvent
Conto risorse Nome della risorsa
ResourceType Nome del tipo di risorsa. Always: SERVERS/DATABASES
SubscriptionId GUID dell'abbonamento per il database
ResourceGroup Nome del gruppo di risorse per il database
LogicalServerName_s Nome del server per il database
ElasticPoolName_s Nome del pool elastico per il database, se presente
DatabaseName_s Nome del database
ResourceId URI risorsa
Message Messaggio di errore in testo normale
user_defined_b È il bit di errore definito dall'utente
error_number_d Codice di errore
Gravità Gravità dell'errore
state_d Stato dell'errore
query_hash_s Hash di query della query non riuscita, se disponibile
query_plan_hash_s Hash del piano di query della query non riuscita, se disponibile

Altre informazioni sui messaggi di errore di SQL.

Set di dati delle statistiche di attesa del database

Proprietà Descrizione
TenantId ID del tenant.
SourceSystem Always: Azure
TimeGenerated [UTC] Timestamp di quando è stato registrato il log
Type Always: AzureDiagnostics
ResourceProvider Nome del provider di risorse. Always: MICROSOFT.SQL
Categoria Nome della categoria. Always: DatabaseWaitStatistics
OperationName Nome dell'operazione. Always: DatabaseWaitStatisticsEvent
Conto risorse Nome della risorsa
ResourceType Nome del tipo di risorsa. Always: SERVERS/DATABASES
SubscriptionId GUID dell'abbonamento per il database
ResourceGroup Nome del gruppo di risorse per il database
LogicalServerName_s Nome del server per il database
ElasticPoolName_s Nome del pool elastico per il database, se presente
DatabaseName_s Nome del database
ResourceId URI risorsa
wait_type_s Nome del tipo di attesa
start_utc_date_t [UTC] Ora di inizio del periodo misurato
end_utc_date_t [UTC] Ora di fine del periodo misurato
delta_max_wait_time_ms_d Tempo massimo tempo di attesa per esecuzione
delta_signal_wait_time_ms_d Tempo di attesa totale dei segnali
delta_wait_time_ms_d Tempo di attesa totale nel periodo
delta_waiting_tasks_count_d Numero di attività in attesa

Altre informazioni sulle statistiche di attesa del database.

Set di dati dei timeout

Proprietà Descrizione
TenantId ID del tenant.
SourceSystem Always: Azure
TimeGenerated [UTC] Timestamp di quando è stato registrato il log
Type Always: AzureDiagnostics
ResourceProvider Nome del provider di risorse. Always: MICROSOFT.SQL
Categoria Nome della categoria. Always: Timeouts
OperationName Nome dell'operazione. Always: TimeoutEvent
Conto risorse Nome della risorsa
ResourceType Nome del tipo di risorsa. Always: SERVERS/DATABASES
SubscriptionId GUID dell'abbonamento per il database
ResourceGroup Nome del gruppo di risorse per il database
LogicalServerName_s Nome del server per il database
ElasticPoolName_s Nome del pool elastico per il database, se presente
DatabaseName_s Nome del database
ResourceId URI risorsa
error_state_d Un valore di stato numerico associato al timeout della query (un evento di attenzione )
query_hash_s Hash di query, se disponibile
query_plan_hash_s Hash del piano di query, se disponibile

Set di dati dei blocchi

Proprietà Descrizione
TenantId ID del tenant.
SourceSystem Always: Azure
TimeGenerated [UTC] Timestamp di quando è stato registrato il log
Type Always: AzureDiagnostics
ResourceProvider Nome del provider di risorse. Always: MICROSOFT.SQL
Categoria Nome della categoria. Always: Blocks
OperationName Nome dell'operazione. Always: BlockEvent
Conto risorse Nome della risorsa
ResourceType Nome del tipo di risorsa. Always: SERVERS/DATABASES
SubscriptionId GUID dell'abbonamento per il database
ResourceGroup Nome del gruppo di risorse per il database
LogicalServerName_s Nome del server per il database
ElasticPoolName_s Nome del pool elastico per il database, se presente
DatabaseName_s Nome del database
ResourceId URI risorsa
lock_mode_s Modalità di blocco usata dalla query
resource_owner_type_s Proprietario del blocco
blocked_process_filtered_s Report XML del processo bloccato
duration_d Durata del blocco in microsecondi

Set di dati di deadlock

Proprietà Descrizione
TenantId ID del tenant.
SourceSystem Always: Azure
TimeGenerated [UTC] Timestamp di quando è stato registrato il log
Type Always: AzureDiagnostics
ResourceProvider Nome del provider di risorse. Always: MICROSOFT.SQL
Categoria Nome della categoria. Always: Deadlocks
OperationName Nome dell'operazione. Always: DeadlockEvent
Conto risorse Nome della risorsa
ResourceType Nome del tipo di risorsa. Always: SERVERS/DATABASES
SubscriptionId GUID dell'abbonamento per il database
ResourceGroup Nome del gruppo di risorse per il database
LogicalServerName_s Nome del server per il database
ElasticPoolName_s Nome del pool elastico per il database, se presente
DatabaseName_s Nome del database
ResourceId URI risorsa
deadlock_xml_s XML del report di deadlock

Set di dati di ottimizzazione automatica

Proprietà Descrizione
TenantId ID del tenant.
SourceSystem Always: Azure
TimeGenerated [UTC] Timestamp di quando è stato registrato il log
Type Always: AzureDiagnostics
ResourceProvider Nome del provider di risorse. Always: MICROSOFT.SQL
Categoria Nome della categoria. Always: AutomaticTuning
Conto risorse Nome della risorsa
ResourceType Nome del tipo di risorsa. Always: SERVERS/DATABASES
SubscriptionId GUID dell'abbonamento per il database
ResourceGroup Nome del gruppo di risorse per il database
LogicalServerName_s Nome del server per il database
LogicalDatabaseName_s Nome del database
ElasticPoolName_s Nome del pool elastico per il database, se presente
DatabaseName_s Nome del database
ResourceId URI risorsa
RecommendationHash_s Hash univoco del consiglio di ottimizzazione automatica
OptionName_s Operazione di ottimizzazione automatica
Schema_s Schema del database
Table_s Tabella interessata
IndexName_s Nome dell'indice
IndexColumns_s Nome colonna
IncludedColumns_s Colonne incluse
EstimatedImpact_s Effetto stimato del file JSON dei consigli di ottimizzazione automatica
Event_s Tipo di evento di ottimizzazione automatica
Timestamp_t Timestamp dell'ultimo aggiornamento

Suggerimento

query_hash_s e query_plan_hash_s vengono forniti come valori numerici. Per trovare le query e i piani di query corrispondenti in Query Store, usare l'espressione T-SQL seguente per convertire i valori hash numerici in valori hash binari usati in sys.query_store_query e sys.query_store_plan:

SELECT CAST(CAST(hash_value as bigint) AS binary(8)).

Sostituire il segnaposto hash_value con il valore numerico effettivo query_hash_s o query_plan_hash_s.

Set di dati di Intelligent Insights

Altre informazioni sul formato di log di Intelligent Insights.

Passaggi successivi

Per informazioni su come abilitare la registrazione e comprendere le categorie di metriche e di log supportate dai vari servizi di Azure, vedere:

Per informazioni su Hub eventi, leggere:

Per informazioni su come configurare gli avvisi in base ai dati di telemetria di Log Analytics, vedere: