Le moniteur surveille l’espace disponible dans tous les fichiers de journal de transactions au sein de la base de données et du support lié. L’espace disponible sur le support hébergeant les fichiers de journal de transaction est uniquement inclus dans l’espace disponible si la croissance automatique est activée pour au moins un fichier. Ce moniteur est un moniteur de dépendance (cumul).
Remarque : Ce moniteur est un moniteur (de cumul) de dépendances. L'état d'intégrité de ce moniteur est déterminé par le meilleur état d'un moniteur membre. Consultez aussi l'article de la Base de connaissances relatif aux moniteurs d'unités apparentés.
L’analyse surveille l’espace disponible dans tous les fichiers journaux des transactions au sein de la base de données et du support lié. L’espace disponible sur le support hébergeant les fichiers journaux est uniquement inclus sous forme de partie de l’espace disponible si la croissance automatique est activée pour au moins un fichier. C’est une analyse (de cumul) de dépendances.
Le fonctionnement anormal est dû à un espace libre insuffisant pour l'ensemble des fichiers journaux. Un espace libre insuffisant peut être causé par :
de paramètres de configuration de fichiers inadéquats (taille, taille maximum, croissance automatique, etc.) ;
d'un espace restant sur le support inadéquat.
d'un manque de sauvegardes régulières périodiques ;
de la non-troncation du journal.
Cette analyse agrège l'espace disponible pour chaque fichier journal dans une base de données selon la configuration de chaque fichier :
Pas de croissance automatique
Dans le cas d’un fichier non configuré pour croître automatiquement, l’espace libre représente la différence entre la taille du fichier et l’espace utilisé (taille des données stockées dans le fichier).
Croissance automatique activée
Avec la croissance automatique activée, l’espace disque libre est inclus dans l’espace disponible total. En plus de la différence entre la taille du fichier et l’espace utilisé, l’espace libre pour les fichiers avec la croissance automatique activée comprend également l’espace libre sur le support (sans dépasser la différence entre la taille de fichier maximale et la taille de fichier actuelle).
Un espace disponible faible pour les fichiers de base de données avec croissance automatique activée peut signifier que le fichier est proche des limites du lecteur logique hôte. Pour les fichiers dont la croissance automatique est activée avec une taille maximale, un espace disponible faible peut aussi signifier que le fichier est proche de la taille maximale spécifiée pour un fichier.
Les calculs d’espace libre tiennent aussi compte du fait que le fichier peut ne pas réussir à croître si l’étape de croissance du fichier (en Mo ou en %) est supérieure à l’espace libre disponible sur le support. La même logique s’applique aux fichiers dont la croissance est limitée par le paramètre de taille maximale. Dans ces cas, l’espace libre restant sur le disque n’est pas inclus dans l’espace libre, puisque la croissance n’est plus possible.
Ce problème peut être résolu en :
augmentant la taille allouée pour les fichiers journaux si la croissance automatique est désactivée ;
augmentant la valeur de taille maximale pour un fichier journal si la croissance automatique est activée ;
activant la croissance automatique pour au moins un fichier ;
déplaçant les fichiers journaux vers un autre lecteur disposant de davantage d'espace libre si l'espace de croissance est limité ;
effectuant des sauvegardes régulières des fichiers journaux pour les modes de récupération FULL et BULK-LOGGED ;
Recherchez la cause de la non-troncation du journal :
Transactions actives de longue durée ouvertes
Opérations de sauvegarde de longue durée
Transaction répliquée ouverte pendant un long moment (réplication transactionnelle)
Miroir en retard sur le serveur du principal (mise en miroir de bases de données)
Modifier les seuils de cette analyse pour les adapter à la charge de travail
Sinon, si l'espace libre pour les fichiers journaux n'est pas un critère important pour la base de données :
Désactivez cette analyse pour cette base de données spécifique ou toutes les bases de données
Consultez la documentation en ligne de SQL Server : Architecture des fichiers et des groupes de fichiers
Nom | Description | Valeur par défaut |
Priorité de l'alerte | Définit la priorité de l'alerte. | Normal |
Gravité de l'alerte | Définit la gravité de l'alerte. | MatchMonitorHealth |
Activé | Active ou désactive le flux de travail. | Oui |
Génère des alertes | Définit si le flux de travail génère une alerte. | Oui |
Target | Microsoft.SQLServer.2016.Database | ||
Parent Monitor | Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitor | ||
Algorithm | BestOf | ||
Source Monitor | Microsoft.SQLServer.2016.Monitoring.DBLogFileSpaceMonitor | ||
Relationship | Microsoft.SQLServer.2016.DBHostsLogFile | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
|
<DependencyMonitor ID="Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitorRollUp" Accessibility="Public" Enabled="true" Target="SQL2016Core!Microsoft.SQLServer.2016.Database" ParentMonitorID="Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitor" Remotable="true" Priority="Normal" RelationshipType="SQL2016Core!Microsoft.SQLServer.2016.DBHostsLogFile" MemberMonitor="Microsoft.SQLServer.2016.Monitoring.DBLogFileSpaceMonitor">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.Database.DBLogFileSpaceMonitorRollUp.AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<Algorithm>BestOf</Algorithm>
<MemberUnAvailable>Error</MemberUnAvailable>
</DependencyMonitor>