managed_backup.fn_get_health_status (Transact-SQL)
S’applique à : SQL Server 2016 (13.x) et versions ultérieures
Retourne une table de 0, d'une ou plusieurs lignes de nombre agrégé des erreurs signalées par des Événements étendus pour une période donnée.
La fonction est utilisée pour signaler l’état d’intégrité des services sous Administrateur intelligent. Actuellement, la sauvegarde gérée par SQL Server sur Microsoft Azure est prise en charge sous l’parapluie De l’administrateur intelligent. Par conséquent, les erreurs retournées sont liées à la sauvegarde managée SQL Server sur Microsoft Azure.
Conventions de la syntaxe Transact-SQL
Syntaxe
managed_backup.fn_get_health_status([@begin_time = ] 'time_1' , [ @end_time = ] 'time_2')
Arguments
[@begin_time]
Début de la période à partir de laquelle le nombre agrégé des erreurs est calculé. Le @begin_time paramètre est DATETIME. La valeur par défaut est NULL. Lorsque la valeur est NULL, la fonction traite les événements signalés 30 minutes avant l'heure actuelle.
[ @end_time]
Fin de la période à partir de laquelle le nombre agrégé des erreurs est calculé. Le @end_time paramètre est DATETIME avec la valeur par défaut NULL. Lorsque la valeur est NULL, la fonction traite les événements étendus jusqu'à l'heure actuelle.
Table retournée
Nom de la colonne | Type de données | Description |
---|---|---|
number_of_storage_connectivity_errors | int | Nombre d’erreurs de connexion lorsque le programme se connecte au compte de stockage Azure. |
number_of_sql_errors | int | Nombre d'erreurs retourné lorsque le programme se connecte au moteur SQL Server. |
number_of_invalid_credential_errors | int | Nombre d'erreurs retourné lorsque le programme tente de s'authentifier en utilisant les informations d'identification SQL. |
number_of_other_errors | int | Nombre d'erreurs dans des catégories autres que la connectivité, SQL ou les informations d'identification. |
number_of_corrupted_or_deleted_backups | int | Nombre de fichiers de sauvegarde supprimés ou endommagés. |
number_of_backup_loops | int | Nombre de fois où l’agent de sauvegarde analyse toutes les bases de données configurées avec la sauvegarde managée SQL Server sur Microsoft Azure. |
number_of_retention_loops | int | Nombre de fois où les bases de données sont analysées pour évaluer la période de rétention définie. |
Meilleures pratiques
Ces nombres agrégés peuvent servir à surveiller l'intégrité du système. Par exemple, si la colonne number_ of_retention_loops indique 0 pour 30 minutes, il est possible que la gestion de la rétention soit trop longue, ou ne fonctionne pas correctement. Les colonnes d’erreur non nulles peuvent indiquer des problèmes et les journaux des événements étendus doivent être vérifiés pour en savoir plus sur les problèmes. Vous pouvez également utiliser la procédure stockée managed_backup.sp_get_backup_diagnostics pour obtenir la liste des événements étendus pour trouver les détails de l’erreur.
Sécurité
autorisations
Nécessite des autorisations SELECT sur la fonction.
Exemples
L'exemple suivant retourne le nombre agrégé des erreurs au cours des 30 dernières minutes d'exécution.
SELECT * FROM managed_backup.fn_get_health_status(NULL, NULL)
L'exemple suivant retourne le nombre agrégé des erreurs pour la semaine en cours :
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)