managed_backup.fn_get_health_status (Transact-SQL)

Si applica a: SQL Server 2016 (13.x) e versioni successive

Restituisce una tabella con 0, una o più righe del conteggio aggregato degli errori restituiti dagli eventi estesi per un periodo specificato.

La funzione viene usata per segnalare lo stato di integrità dei servizi in Smart Admin. Il backup gestito di SQL Server in Microsoft Azure è attualmente supportato nell'ambito smart admin. Gli errori restituiti sono quindi correlati a Backup gestito di SQL Server in Microsoft Azure.

Convenzioni di sintassi Transact-SQL

Sintassi

managed_backup.fn_get_health_status([@begin_time = ] 'time_1' , [ @end_time = ] 'time_2')  

Argomenti

[@begin_time]
L'inizio del periodo di tempo a partire dal quale viene eseguito il conteggio aggregato degli errori. Il @begin_time parametro è DATETIME. Il valore predefinito è NULL. Quando il valore è NULL, la funzione elabora gli eventi restituiti fino a 30 minuti prima dell'ora corrente.

[ @end_time]
La fine del periodo di tempo nel quale viene eseguito il conteggio aggregato degli errori. Il @end_time parametro è DATETIME con un valore predefinito NULL. Quando il valore è NULL, la funzione elabora gli eventi estesi fino all'ora corrente.

Tabella restituita

Nome colonna Tipo di dati Descrizione
number_of_storage_connectivity_errors int Numero di errori di connessione quando il programma si connette all'account di archiviazione di Azure.
number_of_sql_errors int Numero di errori restituiti mentre il programma si connette al motore di SQL Server.
number_of_invalid_credential_errors int Numero di errori restituiti mentre il programma tenta di eseguire l'autenticazione utilizzando le credenziali SQL.
number_of_other_errors int Numero di errori di altre categorie oltre la connettività, SQL o le credenziali.
number_of_corrupted_or_deleted_backups int Numero di file di backup danneggiati o eliminati.
number_of_backup_loops int Numero di volte in cui l'agente di backup esegue l'analisi di tutti i database configurati con Il backup gestito di SQL Server in Microsoft Azure.
number_of_retention_loops int Numero di analisi eseguite sui database per valutare il periodo di memorizzazione impostato.

Procedure consigliate

Questi conteggi aggregati possono essere utilizzati per monitorare l'integrità del sistema. Ad esempio, se la colonna number_ of_retention_loops è 0 in 30 minuti, è possibile che la gestione della memorizzazione richieda del tempo o che addirittura non funzioni correttamente. Le colonne di errori diverse da zero possono indicare problemi e, per individuarli, è necessario verificare i registri eventi estesi. In alternativa, utilizzare la stored procedure managed_backup.sp_get_backup_diagnostics per ottenere un elenco di eventi estesi per trovare i dettagli dell'errore.

Sicurezza

Autorizzazioni

Richiede autorizzazioni SELECT per la funzione.

Esempi

  • Nel seguente esempio vengono restituiti i conteggi aggregati degli errori per gli ultimi 30 minuti a partire dal momento in cui è iniziata l'esecuzione.

    SELECT *  
    FROM managed_backup.fn_get_health_status(NULL, NULL)  
    
    
  • Nell'esempio seguente vengono restituiti i conteggi aggregati degli errori per la settimana corrente:

    Use msdb  
    Go  
    DECLARE @startofweek datetime  
    DECLARE @endofweek datetime  
    SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)   
    SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)  
    SELECT *  
    FROM managed_backup.fn_get_health_status(@startofweek, @endofweek)