Monitorare i carichi di lavoro di Azure SQL con il database watcher (anteprima)

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

Il database watcher è una soluzione di monitoraggio gestita per i servizi di database nella serie Azure SQL. Supporta il Database SQL di Azure e l'Istanza gestita di SQL di Azure.

Il database watcher raccoglie dati di monitoraggio approfonditi del carico di lavoro per offrire una visualizzazione dettagliata delle prestazioni, della configurazione e del funzionamento del database. Il monitoraggio dei dati dai database, dai pool elastici e dalle istanze gestite di SQL selezionati viene raccolto in un archivio dati centrale nella sottoscrizione di Azure. Le dashboard nel portale di Azure offrono una visualizzazione in un unico riquadro dell'ambiente Azure SQL e una visualizzazione dettagliata di ogni database, pool elastico e istanza gestita di SQL.

Diagramma che mostra i componenti e il flusso di dati del database watcher dalle risorse monitorate all'archivio dati nelle dashboard del portale di Azure.

Per archiviare e analizzare i dati di monitoraggio SQL, il database watcher può usare Esplora dati di Azure o Analisi in tempo reale in Microsoft Fabric. Esplora dati di Azure è un servizio dati completamente gestito e altamente scalabile, progettato per l'inserimento rapido e l'analisi sui dati di monitoraggio delle serie temporali. Un singolo cluster di Esplora dati di Azure può essere ridimensionato per supportare il monitoraggio dei dati da migliaia di risorse di Azure SQL. Analisi in tempo reale usa lo stesso motore principale di un'offerta SaaS all'interno di Microsoft Fabric.

È possibile eseguire query sui dati in un database di Esplora dati di Azure o di analisi in tempo reale usando KQL o T-SQL, creare visualizzazioni personalizzate usando dashboard di Esplora dati di Azure, Power BI o Grafana e analizzare i dati in Excel. È possibile impostare i criteri di conservazione dei dati per ogni database o per tabella e ridimensionare il cluster Esplora dati di Azure o manualmente o automaticamente per ottenere il rapporto prezzo/prestazioni ottimale.

Per iniziare a monitorare le risorse di Azure SQL, creare una risorsa watcher nella sottoscrizione di Azure. Configurare watcher selezionando un archivio dati e un set di database, pool elastici o istanze gestite di SQL da monitorare, denominate destinazioni SQL. Concedere al watcher l'accesso alle destinazioni e avviare il watcher.

Nota

Il database watcher è attualmente in anteprima. Le funzionalità di anteprima sono rilasciate con capacità limitata ma sono rese disponibili in anteprima in modo che i clienti possano ottenere un accesso anticipato e possano fornire commenti. Le funzionalità di anteprima sono soggette a condizioni di anteprima supplementari separate e non sono soggette ai contratti di servizio. Il supporto viene fornito come best effort in determinati casi. Tuttavia, il supporto tecnico Microsoft è desideroso di ricevere il feedback sulla funzionalità di anteprima e potrebbe fornire il miglior supporto in alcuni casi. Le funzionalità di anteprima potrebbero avere funzionalità limitate e potrebbero essere disponibili solo nelle aree geografiche selezionate.

Destinazioni di Azure SQL supportate

Il database watcher supporta tutti i livelli di servizio, i livelli di calcolo e gli obiettivi di servizio in database SQL di Azure e Istanza gestita di SQL di Azure. Sono inclusi i modelli di acquisto vCore e DTU, i livelli di calcolo con provisioning e serverless, i database singoli e i pool elastici e Hyperscale.

Il database watcher può monitorare tutti i tipi di repliche secondarie leggibili, incluse repliche a disponibilità elevata, repliche geografiche e repliche secondarie denominate Hyperscale.

Per un determinato watcher, le destinazioni SQL possono essere in qualsiasi sottoscrizione all'interno dello stesso tenant di Microsoft Entra ID.

Prezzo del database watcher

I costi del database watcher sono a carico dei singoli componenti, come indicato di seguito:

Componente Prezzo Note
Watcher Gratuito
Dashboard Gratuito
Cluster di Esplora dati di Azure* Dettagli sui prezzi Lo SKU del cluster ottimale dipende dal numero di destinazioni di monitoraggio e dal carico di lavoro di query del cluster. Per considerazioni sul ridimensionamento del cluster, vedere Gestire il cluster Esplora dati di Azure.
Analisi in tempo reale in Microsoft Fabric Incluso nel modello di consumo dell'area di lavoro Power BI Premium. Fatturazione per utilizzo. Usare Esplora dati di Azure o Analisi in tempo reale. È necessaria solo una di queste offerte.
Un insieme di credenziali in Azure Key Vault Dettagli sui prezzi Obbligatorio solo se viene usata l'autenticazione SQL facoltativa anziché l'autenticazione predefinita di Microsoft Entra.
Larghezza di banda della rete di Azure Dettagli sui prezzi Il costo non viene addebitato se un watcher, le destinazioni e il relativo archivio dati vengono distribuiti nella stessa area di Azure.

*È possibile usare un cluster gratuito di Esplora dati di Azure quando non è necessario un contratto di servizio e quando le prestazioni delle query e i requisiti di archiviazione vengono soddisfatti dalle specifiche della capacità del cluster gratuita. Il periodo di valutazione del cluster gratuito è di un anno e può essere esteso in automatico.

Non è previsto alcun addebito per ogni risorsa di Azure SQL monitorata o per utente, rendendo il database watcher una soluzione di monitoraggio economica per ambienti SQL di Azure più grandi e team di grandi dimensioni.

Disponibilità a livello di area

A questo punto, è possibile creare database watcher nelle aree di Azure seguenti:

Dati geografici di Azure Area di Azure
Asia Pacifico Asia sud-orientale
Canada Canada centrale
Europa Europa occidentale
Stati Uniti Stati Uniti orientali
Stati Uniti Stati Uniti occidentali

Suggerimento

Un watcher in un'area di Azure può monitorare le destinazioni in un'altra area. Analogamente, un watcher e il relativo archivio dati possono trovarsi in aree diverse.

Quando possibile, collocare un watcher, le destinazioni e il relativo archivio dati nella stessa area. Se il database watcher non è ancora disponibile nell'area, scegliere un'area nella stessa area geografica di Azure. Ciò può ridurre i costi della larghezza di banda di rete di Azure.

Limiti

Esiste un limite al numero di destinazioni SQL per watcher e al numero di watcher per ogni sottoscrizione. Le distribuzioni che superano questi limiti non sono supportate.

Parametro Limite
Destinazioni SQL per watcher1 50
Watcher per sottoscrizione 20

1Una replica di disponibilità elevata di un database, di un pool elastico o di un'istanza gestita di SQL viene monitorata indipendentemente dalla replica padre e viene considerata una destinazione separata.

Nota

Durante l'anteprima, i limiti sono soggetti a modifiche.

Dashboard

Il database watcher usa cartelle di lavoro di Azure per fornire dashboard di monitoraggio a livello di ambiente e a livello di risorsa.

Di seguito, è riportato un esempio di mappa termica dell'utilizzo della CPU del database nella dashboard di ambiente. Ogni esagono rappresenta una destinazione SQL. Vi sono due server logici, uno con sei database e uno con tre database. Le repliche secondarie a disponibilità elevata vengono visualizzate nella mappa termica come destinazioni separate. Selezionare l'immagine per visualizzare dettagli aggiuntivi, incluse le statistiche di inserimento dati.

Screenshot che mostra un esempio di mappa termica dell'utilizzo della CPU nella dashboard di ambiente del database watcher.

Di seguito è riportato un esempio che mostra una visualizzazione parziale della scheda Prestazioni di una dashboard del database SQL di Azure. Selezionare l'immagine per ingrandire i dettagli.

Screenshot che mostra un esempio di dashboard del database watcher per un database SQL di Azure.

Nella tabella seguente vengono descritte le funzionalità delle dashboard del database watcher nel portale di Azure.

Funzionalità Descrizione
Dashboard di ambiente Visualizzare i dati di monitoraggio di alto livello per più risorse monitorate in una visualizzazione comune. Usare le mappe termiche per trovare i principali database che usano risorse, pool elastici o istanze gestite di SQL.

Usare la visualizzazione query principali per trovare le prime query che usano le risorse nell'ambiente di Azure SQL, classificare le query in base alla CPU, alla durata, al numero di esecuzioni e così via.

Usare i filtri dei nomi delle risorse per concentrarsi sui subset dell'ambiente di Azure SQL.

Eseguire il drill-through in dashboard dettagliate per risorse specifiche.
Dashboard delle risorse Visualizzare i dati di monitoraggio dettagliati per un database, un pool elastico o un'istanza gestita di SQL, incluse le:

sessioni attive
- Cronologia dei backup
- Contatori delle prestazioni comuni
- Probe di connettività
- Proprietà e configurazione del database e dell'istanza
- Replica geografica
- Indicici di metadati, statistiche di utilizzo, avvisi e suggerimenti
- Uso della risorsa
- Statistiche di sessione e connessione
- Stato e cronologia del processo di SQL Agent
- Consumo e prestazioni dello spazio di archiviazione
- Tabella dei metadati
- Query principali
- Statistiche di attesa

Usare gli elenchi a discesa delle risorse per passare rapidamente da una risorsa a un'altra. Usare il collegamento estate per eseguire lo zoom indietro su una dashboard di ambiente.
Filtro per intervallo di tempo In ogni dashboard impostare l'intervallo di tempo per concentrarsi sull'intervallo di tempo desiderato. Usare intervalli di tempo standard o personalizzati. Restringere l'intervallo di tempo a un intervallo di interesse tramite "sfioramento" o trascinare il cursore del mouse su un grafico per selezionare un intervallo di tempo più breve.
Dati storici A seconda del set di dati, i dashboard mostrano un riepilogo per l'intervallo di tempo selezionato o l'ultimo campione raccolto nell'intervallo di tempo.

Passare dalla visualizzazione più recente a quella cronologica per esaminare i campioni di dati in precedenza nell'intervallo di tempo selezionato. Ad esempio, invece di esaminare le sessioni attualmente attive, esaminare un campione precedente di sessioni attive raccolte quando si è verificato un picco di utilizzo delle risorse.
Repliche secondarie Monitorare tutti i tipi di repliche, incluse le repliche secondarie a disponibilità elevata nelle dashboard risorse. Passare dalla visualizzazione della replica primaria alla relativa replica secondaria a disponibilità elevata nelle dashboard delle risorse.
Scaricare dati in Excel Scaricare i dati dai grafici e dalle griglie come file csv e aprirli in Excel per ulteriori analisi.
Aggiornamento dati Recuperare i dati più recenti dall'archivio dati di monitoraggio quando si apre una dashboard e si passa da una scheda all’altra. Dopo che una dashboard è stata aperta per qualche tempo, aggiornarla manualmente per visualizzare i dati più recenti o abilitare l'aggiornamento automatico della dashboard.
Query KQL ad hoc Usare un collegamento in ogni dashboard per aprire l'interfaccia utente web Esplora dati di Azure ed eseguire query sui dati di monitoraggio con KQL. Per altre informazioni, vedere Set di dati e Usare KQL per analizzare i dati di monitoraggio.
Descrizioni Attivare o disattivare il parametro Mostra descrizioni per visualizzare le descrizioni che consentono di interpretare i dati visualizzati e includere collegamenti alla documentazione pertinenti.
Descrizioni comandi Passare il puntatore del mouse su un campo per visualizzare altri dettagli e contesto per i dati visualizzati.
Statistiche di inserimento Usare il collegamento Statistiche di inserimento per visualizzare la latenza di inserimento dati e altre statistiche di inserimento per set di dati.
Modalità scura Cambiare l'aspetto del portale di Azure per usare il tema scuro per fare in modo tale che i dashboard del database watcher usino la modalità scura.

Nota

Durante l'anteprima, le visualizzazioni e le funzionalità della dashboard sono soggette a modifiche.

Dati di monitoraggio di SQL

Il database watcher raccoglie i dati di monitoraggio da più di 70 viste del catalogo SQL e viste a gestione dinamica (DMV). I dati di una o più viste correlate vengono trasformati in un set di dati. Ad esempio, i dati di sys.dm_exec_sessions, sys.dm_exec_requests e altre visualizzazioni formano il set di dati delle sessioni attive. Per ogni set di dati è presente una tabella separata nel database di Analisi in tempo reale o Esplora dati di Azure.

Il database watcher include gruppi di set di dati separati per database, pool elastici e istanze gestite di SQL. Esistono da 10 a 30 set di dati in ogni gruppo, offrendo una visualizzazione dettagliata delle prestazioni, della configurazione e dell'integrità del database per le risorse SQL di Azure.

Per altre informazioni, vedere Raccolta di dati e set di dati del database watcher.

Connettività di rete

Il database watcher usa un agente di raccolta dati remoto che si connette a destinazioni, archivi dati e insieme di credenziali delle chiavi in rete. A seconda dei requisiti di sicurezza di rete e della configurazione delle risorse di Azure, il database watcher può usare la connettività privata o pubblica. È sempre possibile controllare completamente la connettività di rete dal database watcher alle risorse di Azure.

Per altre informazioni sulla connettività di rete in Azure SQL, vedere Architettura di connettività database SQL di Azure e Architettura di connettività dell'Istanza gestita di SQL di Azure.

Connettività privata

Per fornire connettività privata, il database watcher usa il Collegamento privato di Azure. Quando si configura un watcher, è possibile creare endpoint privati gestiti per consentire al watcher di connettersi ai database e ai pool elastici nei server logici o alle istanze gestite di SQL. È anche possibile creare un endpoint privato per il cluster Esplora dati di Azure e per l'insieme di credenziali delle chiavi che archivia le credenziali di autenticazione SQL. Al momento, la connettività privata non è disponibile per le connessioni ad Analisi in tempo reale in Microsoft Fabric.

Un proprietario della risorsa deve approvare un endpoint privato prima che il database watcher possa usarlo. Al contrario, i proprietari delle risorse possono eliminare qualsiasi endpoint privato del database watcher in ogni momento per interrompere la raccolta di dati.

Dopo aver creato e approvato un endpoint privato per una risorsa di Azure, tutto il traffico di rete tra un watcher e la risorsa impiega la connettività privata, anche se la connettività pubblica per la risorsa rimane abilitata.

Per altre informazioni sugli endpoint privati in Azure SQL, vedere Collegamento privato di Azure per database SQL di Azure e Collegamento privato di Azure per Istanza gestita di SQL di Azure.

Connettività tramite indirizzo pubblico

Se la connettività privata non è necessaria, il database watcher può usare la connettività pubblica per connettersi alle risorse di Azure. Per consentire a un watcher di connettersi a database e pool elastici in un server logico del database SQL di Azure, è necessario abilitare l'accesso pubblico al server e il firewall basato su IP deve consentire le connessioni da tutti i servizi di Azure.

Per consentire a un watcher di connettersi a un'istanza gestita di SQL usando la connettività pubblica, l'istanza deve avere l'endpoint pubblico abilitato. Inoltre, una regola del gruppo di sicurezza di rete (NSG) che consente il traffico in ingresso sulla porta TCP 3342 alla subnet dell'istanza gestita deve avere l'origine impostata su AzureCloud. Per altre informazioni, vedere Configurare endpoint pubblici nell'istanza gestita di SQL di Azure.

Per consentire a un watcher di connettersi a un cluster di Esplora dati di Azure o a un insieme di credenziali delle chiavi usando la connettività pubblica, il cluster o l'insieme di credenziali deve disporre dell'accesso alla rete abilitato da tutte le reti.

Accesso ai dati

Proprio come la connettività di rete, è possibile controllare completamente l'accesso del database watcher ai database. È possibile concedere l'accesso creando account di accesso del database watcher nei server logici e nelle istanze gestite di SQL e quindi concedendo autorizzazioni specifiche e limitate per raccogliere i dati di monitoraggio dalle visualizzazioni di sistema SQL.

Autenticazione watcher

Il database watcher supporta l'autenticazione di Microsoft Entra (nota in precedenza come autenticazione di Azure Active Directory). Questo è il modo preferito e consigliato per un watcher per l'autenticazione in una destinazione SQL. Si crea un account di accesso per l'autenticazione di Microsoft Entra per l'identità gestita del watcher in tutti i server logici e le istanze gestite di SQL che si desidera monitorare.

Il database watcher supporta anche l'autenticazione SQL basata su password. È possibile usare l'autenticazione SQL se l'autenticazione di Microsoft Entra non è abilitata nelle risorse di Azure SQL. Per altre informazioni, vedere Configurazione aggiuntiva per l'uso dell'autenticazione SQL.

Autorizzazione del watcher

Per raccogliere dati di monitoraggio, il database watcher richiede un accesso specifico e limitato a ogni destinazione di monitoraggio, come descritto nella tabella seguente. Queste appartenenze ai ruoli e le autorizzazioni forniscono all'istanza di Watcher l'accesso necessario ai dati di monitoraggio del sistema, ma non ad altri dati nei database.

Database SQL di Azure Istanza gestita di SQL di Azure
Appartenenza a tutti i ruoli del server seguenti:
##MS_ServerPerformanceStateReader##
##MS_DefinitionReader##
##MS_DatabaseConnector##
Autorizzazioni del server seguenti:
CONNECT SQL
CONNECT ANY DATABASE
VIEW ANY DATABASE
VIEW ANY DEFINITION
VIEW SERVER PERFORMANCE STATE

Autorizzazione SELECT per le tabelle seguenti nel database msdb:
dbo.backupmediafamily
dbo.backupmediaset
dbo.backupset
dbo.suspect_pages
dbo.syscategories
dbo.sysjobactivity
dbo.sysjobhistory
dbo.sysjobs
dbo.sysjobsteps
dbo.sysoperators
dbo.syssessions

Importante

Quando un watcher si connette a una risorsa SQL di Azure, convalida le autorizzazioni SQL che contiene. Se le autorizzazioni concesse non sono sufficienti o se vengono concesse autorizzazioni non necessarie, il watcher si disconnette. In questo modo, il watcher può raccogliere i dati di monitoraggio del sistema, ma non concede accidentalmente l'accesso ad altri dati nei database.

Quando si configura l'accesso watcher a una destinazione SQL, creare sempre un account di accesso dedicato usando gli script forniti. Non aggiungere l'account di accesso o l'utente del watcher a alcun ruolo SQL o concedere autorizzazioni SQL diverse da quelle elencate nella tabella.

Se si negano le autorizzazioni necessarie all'account di accesso o all’utente del database watcher o al public ruolo del database in qualsiasi database, il database watcher non raccoglierà i dati di monitoraggio. A seconda delle autorizzazioni negate, questo potrebbe influire su alcuni o tutti i set di dati.

Viceversa, se si concedono autorizzazioni non necessarie all'account di accesso del database watcher o all'utente direttamente o indirettamente, ad esempio concedendo autorizzazioni al ruolo del database public o a un altro ruolo che contiene l'account di accesso o l'utente del database watcher, il database watcher non raccoglierà i dati di monitoraggio.

Limiti

In questa sezione vengono descritte le limitazioni del database watcher. Se disponibili, vengono fornite soluzioni alternative.

Limitazione Soluzione alternativa
Se si usano SKU di Esplora dati di Azure più piccoli, ad esempio Sviluppo/test o Extra small, alcune query della dashboard potrebbero non riuscire a eseguire in modo intermittente con un errore "interrotto a causa della limitazione". Ricaricare la dashboard oppure aumentare le prestazioni del cluster Esplora dati di Azure allo SKU successivo più alto.
Se si crea un cluster di Esplora dati di Azure gratuito dall'interfaccia utente del database watcher in portale di Azure, è possibile che venga visualizzato un errore "Non è stato possibile connettersi al cluster, 403-Accesso negato" se si tenta di accedere al cluster nell'interfaccia utente Web di Esplora dati di Azure. Questo problema non si verifica se si crea il cluster gratuito usando https://aka.ms/kustofree.

Se è già stato creato un cluster gratuito dal portale di Azure, seguire questa procedura:

Nell'interfaccia utente Web di Esplora dati di Azure selezionare il nome del profilo nella barra principale per aprire il gestore account e selezionare Cambia directory. Selezionare la directory diversa dall'account Microsoft e selezionare Cambia. Verrà ora visualizzato il cluster gratuito di Esplora dati di Azure creato.

In alternativa, è possibile modificare la connessione cluster nell'interfaccia utente Web di Esplora dati di Azure usando il pulsante modifica (matita) e cambiare in modo analogo la directory.
Se l'utilizzo della CPU per un database, un pool elastico o un'istanza gestita di SQL persiste quasi al 100%, le risorse CPU rimanenti potrebbero non essere sufficienti per le query di raccolta di dati del database watcher, causando lacune nei dati raccolti. Se si osservano lacune nei dati correlate all'utilizzo elevato della CPU nel database, nel pool elastico o in un'istanza gestita di SQL, è consigliabile ottimizzare il carico di lavoro dell'applicazione per ridurre il consumo di CPU o aumentare il numero di vCore o DTU per abilitare il monitoraggio affidabile.

Problemi noti

Durante l'anteprima, il database watcher presenta i seguenti problemi noti seguenti.

Problema Prevenzione o soluzione alternativa
Se la raccolta di dati non può essere avviata o continuata per un errore (ad esempio, accesso insufficiente a una destinazione SQL o all'archivio dati), l'errore non viene esposto nel log Attività. Per risolvere i problemi, vedere Dati non raccolti.
La disabilitazione dell'identità gestita assegnata dal sistema di un watcher non è supportata. Per eliminare l'identità assegnata dal sistema di un watcher dalla directory, eliminare il watcher.
Se un database serverless ha la sospensione automatica abilitata e viene aggiunto come destinazione del database watcher, potrebbe non essere sospeso automaticamente come previsto. Per un database di offerta gratuita, in questo modo si potrebbe esaurire il credito mensile gratuito prima del previsto. Se è necessaria la funzionalità di sospensione automatica, non usare il database watcher per monitorare i database serverless in questo momento.
Per Istanza gestita di SQL di Azure, i dati non vengono raccolti dalla replica di disponibilità elevata leggibile o da una replica geografica se si usa l'autenticazione SQL. Vi sono due soluzioni alternative:
1. Usare l'autenticazione di Microsoft Entra ID (preferita).
2. Disattivare la verifica dei criteri password. Eseguire ALTER LOGIN [database-watcher-login-placeholder] WITH CHECK_POLICY = OFF;, sostituendo database-watcher-login-placeholder con il nome dell'account di accesso di autenticazione SQL del watcher. Eseguire questo comando nella replica primaria e nella replica geografica, se presente.
Se il nome del watcher non è univoco all'interno del tenant di Microsoft Entra ID, la concessione dell'accesso alle destinazioni tramite l'autenticazione di Microsoft Entra avrà esito negativo. Ricreare il watcher con un nome univoco all'interno del tenant.
Non è possibile esportare un modello di ARM da una risorsa watcher esistente. Iniziare a creare un nuovo watcher e immettere tutti i dettagli necessari. Nella pagina Rivedi e crea, usare il collegamento Visualizza modello di automazione per ottenere un modello di ARM e un file di parametri. È quindi possibile usare il modello e il file di parametri personalizzato in una distribuzione personalizzata per creare un nuovo watcher.
Per i set di dati elencati, il primo campione raccolto dopo un riavvio del watcher potrebbe contenere dati già raccolti prima del riavvio. Viceversa, se un watcher viene avviato dopo una pausa nella raccolta, i dati di monitoraggio generati durante la pausa potrebbero non essere raccolti completamente anche se sono presenti nel database monitorato.
- Cronologia di backup
- Modifica elaborazione
- Modifica errori di elaborazione
- Eventi di memoria esaurita
- Statistiche di runtime delle query
- Statistiche di attesa di query
- Cronologia processi di SQL Agent
Attualmente nessuna.
I dati non vengono raccolti se si usa un database in Analisi in tempo reale come archivio dati e l'opzione di disponibilità OneLake è abilitata. Disattivare l'opzione di disponibilità OneLake e riavviare il watcher per riprendere la raccolta di dati.
Quando si aggiunge una destinazione di database SQL, l'elenco dei database visualizzati nell'elenco a discesa è incompleto se sono presenti più di 1.000 database nel server logico selezionato. Attualmente nessuna.
Il feedback inviato usando il pulsante del viso sorridente nelle dashboard del database watcher in portale di Azure potrebbe non raggiungere il team del prodotto del database watcher. Usare le opzioni in Invia feedback.
A causa di un problema noto in database SQL di Azure, non è possibile creare copie del database e repliche geografiche tramite T-SQL quando un account di accesso viene aggiunto a un ruolo del server. Poiché gli account di accesso al database watcher devono essere aggiunti a un set di ruoli del server, la creazione di copie di database e repliche geografiche tramite T-SQL smette di funzionare se si abilita il database watcher. Per creare copie di database o repliche geografiche tramite T-SQL, rimuovere l'account di accesso del database watcher dai ruoli del server ##MS_ServerPerformanceStateReader##, ##MS_DefinitionReader## e ##MS_DatabaseConnector##. Per ripristinare la funzionalità del database watcher al termine di una copia del database o dopo la creazione di una replica geografica, aggiungere di nuovo l'account di accesso a questi ruoli del server per concedere al watcher l'accesso alle destinazioni SQL.

Le copie del database e le repliche geografiche create nel portale di Azure o a livello di codice tramite PowerShell, l'interfaccia della riga di comando di Azure e l'API REST non sono interessate.
In Istanza gestita di SQL di Azure, i dati non vengono raccolti se l'autorizzazione EXECUTE per le stored procedure di sistema sys.xp_msverviene revocata o negata al ruolo public. Concedere l'autorizzazione EXECUTE su sys.xp_msver all'account di accesso del database watcher.

In ogni istanza gestita di SQL aggiunta come destinazione del database watcher, eseguire USE master; CREATE USER [database-watcher-login-placeholder] FOR LOGIN [database-watcher-login-placeholder]; GRANT EXECUTE ON sys.xp_msver TO [database-watcher-login-placeholder];, sostituendo database-watcher-login-placeholder con il nome dell'account di accesso del watcher.
Se si crea un endpoint privato gestito per consentire a un watcher di connettersi a un'istanza gestita di SQL arrestata, lo stato di provisioning dell'endpoint privato viene segnalato come Non riuscito e il watcher non può connettersi all'istanza. Eliminare l'endpoint privato gestito con lo stato Di provisioning non riuscito e avviare l'istanza gestita di SQL. Dopo l'eliminazione dell'endpoint privato non riuscito e l'istanza è in esecuzione, ricreare l'endpoint privato gestito.
Se si usa un modello Bicep o ARM per creare un watcher e aggiungere più di una destinazione SQL, i dati potrebbero non essere raccolti da alcune delle destinazioni SQL specificate nel modello. Rimuovere le destinazioni in cui i dati non vengono raccolti e aggiungerli nel portale di Azure.
Se si crea un endpoint privato gestito e quindi si tenta di eliminare l'endpoint privato o eliminare il watcher, l'operazione di eliminazione viene segnalata come riuscita, ma l'endpoint privato o watcher potrebbe non essere eliminato. Questo succede se viene cancellato un blocco di sola lettura per la risorsa, il gruppo di risorse o la sottoscrizione della risorsa per cui si sta creando un endpoint privato gestito. Per eliminare l'endpoint privato gestito o watcher, rimuovere il blocco di eliminazione dalla risorsa, dal gruppo di risorse o dalla sottoscrizione. È possibile aggiungere di nuovo il blocco al termine della corretta eliminazione.

Risoluzione dei problemi

In questa sezione vengono descritti i passaggi da svolgere per risolvere i problemi comuni. Se i passaggi descritti in questa sezione non risolvono il problema, aprire un caso di supporto.

I dati non sono raccolti

Se si crea un nuovo watcher e non vengono visualizzati i dati di monitoraggio nei dashboard e nell'archivio dati o se vengono visualizzati solo i dati meno recenti, esaminare questa sezione.

  • Nella pagina di panoramica del watcher controllare il campo Stato per verificare se il watcher è in esecuzione. In caso contrario, usare il pulsante Start nella stessa pagina per avviare la raccolta di dati. Un nuovo watcher non viene avviato automaticamente.
  • Verificare che il watcher abbia accesso ai dati archiviati.
  • Se si usa un database di Esplora dati di Azure come archivio dati, verificare che il cluster Esplora dati di Azure sia stato avviato. Per altre informazioni, vedere Cluster Esplora dati di Azure interrotto.
  • Verificare che il watcher disponga dell'accesso limitato alle destinazioni SQL. Inoltre, se si usa l'autenticazione SQL per qualsiasi destinazione, controllare l'accesso all'insieme di credenziali delle chiavi del watcher o usare l'autenticazione Microsoft Entra consigliata.
  • Se si desidera che il watcher usi l'autenticazione Microsoft Entra per connettersi alle destinazioni SQL, assicurarsi che l'autenticazione Microsoft Entra sia abilitata nei server logici che ospitano le destinazioni del database e del pool elastico, e nelle destinazioni dell'istanza gestita.
  • Se sono stati creati endpoint privati per il watcher, assicurarsi che siano approvati dal proprietario della risorsa.
  • Se si usa la connettività pubblica, assicurarsi che siano soddisfatti i requisiti per consentire al watcher di connettersi a destinazioni, archivio dati e insieme di credenziali delle chiavi.
  • Se si sta usando il cluster di Esplora dati di Azure gratuito, assicurarsi di non aver raggiunto la capacità di archiviazione del cluster. Quando il cluster sta per raggiungere o ha raggiunto tale capacità, viene visualizzato un messaggio di avviso nella pagina del cluster gratuito. Se viene raggiunta la capacità di archiviazione, non è possibile inserire nuovi dati di monitoraggio. È possibile eseguire l'aggiornamento a un cluster completo di Esplora dati di Azure oppure ridurre la conservazione dei dati per eliminare i dati meno recenti e liberare spazio per i nuovi dati. Per altre informazioni, vedere Criteri di conservazione.

Se si apportano modifiche all'accesso o alla connettività watcher come parte della risoluzione dei problemi, potrebbe essere necessario arrestare e riavviare il watcher per rendere effettive le modifiche.

I dashboard sono vuoti

Se si seleziona la pagina Dashboard di un watcher, ma non viene visualizzato un riepilogo delle destinazioni SQL nella pagina, espandere la sezione Archivio dati. Se viene visualizzato un errore Non è possibile connettersi..., vedere questa sezione.

  • Potrebbe non essere possibile accedere all'archivio dati. Per ulteriori informazioni, vedere informazioni su Come concedere l'accesso a utenti e gruppi all’archivio dati.
  • Il cluster Esplora dati di Azure potrebbe essere arrestato. Per altre informazioni, vedere Cluster Esplora dati di Azure interrotto.
  • Il cluster o il database di Esplora dati di Azure oppure il database di Analisi in tempo reale potrebbe essere stato eliminato dopo che è stato selezionato come archivio dati per il watcher. Passare al cluster e al database e verificare che esistano.

Per verificare che l'utente abbia accesso e possa connettersi all'archivio dati e che il database dell'archivio dati esista, seguire questa procedura:

  • Nella pagina Dashboard di un watcher espandere la sezione Archivio dati e copiare il valore dell'URI della query Kusto. Assicurarsi di copiare l'intera stringa URI. Prendere nota anche del valore del database Kusto.

  • Aprire l’interfaccia utente web di Esplora dati di Azure. Eseguire l'accesso, se richiesto.

  • Selezionare Aggiungi, Connessione e immettere l'URI copiato come Connessione URI.

  • Selezionare Aggiungi per creare una nuova connessione.

  • Dopo aver aggiunto una nuova voce di connessione, espanderla per visualizzare i database.

  • Selezionare il database a cui si fa riferimento come database Kusto nella pagina Dashboard del watcher e selezionare il + segno sulla barra delle schede per aprire una nuova scheda query connessa a questo database.

  • Esegui questo comando KQL:

    .show database principals;
    

    Verificare che esista una riga per un Visualizzatore o un ruolo con privilegi più elevati per l'account utente o per un gruppo di ID Microsoft Entra che contiene l'account utente.

Invia commenti

Il team del database watcher di Microsoft è in attesa di commenti e suggerimenti. È possibile inviare feedback sul prodotto in uno dei modi seguenti:

  • Pubblicare una nuova idea nel forum dei commenti e suggerimenti di SQL. Nella pagina Pubblica una nuova idea, usare SQL come forum, selezionare il gruppo SQL di Azure e includere il database watcher nel titolo. Il feedback inviato nel forum di feedback è pubblico. Altri membri della community possono votare e commentare le idee e i suggerimenti. I voti e i commenti della community aiutano il team di controllo del database watcher a pianificare e classificare in ordine di priorità i miglioramenti dei prodotti.
  • Usare il pulsante feedback in portale di Azure. Il pulsante si trova nell'intestazione del portale accanto ai dettagli dell'account. Il feedback inviato in questo modo non è pubblico. Quando si inviano commenti e suggerimenti, è possibile consentire facoltativamente a Microsoft di inviare un messaggio di posta elettronica a questo feedback per i follow-up e i chiarimenti.

Per il supporto tecnico o la risoluzione di un problema con il database watcher, aprire un caso di supporto.