Le moniteur signale un état Avertissement et émet une alerte quand le taux de paires de fichiers de point de contrôle périmées au sein du groupe de fichiers de données optimisées en mémoire dépasse les seuils spécifiés.
Notez que les alertes sont émises seulement si la base de données correspondante est relativement grande (total max de 300 fichiers de point de contrôle).
Ce moniteur signale un état Avertissement et émet une alerte quand la proportion de paires de fichiers de point de contrôle périmées au sein du groupe de fichiers de données optimisées en mémoire dépasse les seuils spécifiés.
Notez que les alertes sont générées seulement si la base de données correspondante est relativement importante (300 fichiers de point de contrôle maximum).
Les paires de fichiers de point de contrôle obsolètes sont des fichiers qui restent dans le système en attente de troncation du journal ou du garbage collection.
La fusion des paires de fichiers de point de contrôle est déclenchée selon une stratégie de fusion interne. Pour plus d’informations, consultez cet article.
Effectuez une fusion manuelle et forcez le nettoyage de la mémoire, comme décrit dans les articles suivants :
Analyse et dépannage de la fusion pour les paires de fichiers de données et de fichiers delta
Forcer le nettoyage de la mémoire sur les fichiers de données fusionnés
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. | Avertissement |
Seuil de paires de fichiers de point de contrôle | Une alerte est générée si le nombre total de paires de fichiers de point de contrôle est supérieur ou égal au seuil de paires de fichiers de point de contrôle. | 300 |
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 |
Intervalle (en secondes) | Intervalle régulier (en secondes) auquel exécuter le flux de travail. | 300 |
Nombre d'échantillons | Indique le nombre de dépassements des seuils par une valeur mesurée avant la modification de l'état. | 6 |
Délai du script (en millisecondes) | Ce paramètre définit le délai entre les requêtes T-SQL consécutives exécutées par le flux de travail. Cette opération peut aider à réduire l'encombrement généré par le flux de travail dans le cas d'un grand nombre d'objets cibles. Demandez conseil au support Microsoft avant de modifier ce paramètre. | 0 |
Heure de la synchronisation | Heure de la synchronisation spécifiée selon un format de 24 heures. Peut être omise. |
|
Seuil | Le rapport collecté sera comparé à ce paramètre. | 60 |
Délai d'expiration (en secondes) | Spécifie la durée pendant laquelle le flux de travail est autorisé à s'exécuter avant d'être fermé et marqué comme ayant échoué. | 180 |
Target | Microsoft.SQLServer.2016.DBFileGroupFx | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2016.DBFileGroupFx.StaleCFPs.MonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2016.Monitor.DBFileGroupFx.StaleCFPs" Target="SQL2016Core!Microsoft.SQLServer.2016.DBFileGroupFx" ParentMonitorID="SystemHealth!System.Health.PerformanceState" TypeID="Microsoft.SQLServer.2016.DBFileGroupFx.StaleCFPs.MonitorType" Accessibility="Public" Enabled="true" Remotable="true" Priority="Normal" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.Monitor.DBFileGroupFx.StaleCFPs.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.Database"]/DatabaseName$</AlertParameter3>
<AlertParameter4>$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.FileGroup"]/GroupName$</AlertParameter4>
<AlertParameter5>$Data/Context/SampleValue$</AlertParameter5>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ErrorState" MonitorTypeStateID="ErrorState" HealthState="Warning"/>
<OperationalState ID="SuccessState" MonitorTypeStateID="SuccessState" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<ServerName>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ServerName>
<SqlInstanceName>$Target/Host/Host/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</SqlInstanceName>
<DatabaseName>$Target/Host/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.Database"]/DatabaseName$</DatabaseName>
<Threshold>60</Threshold>
<CfpCountThreshold>300</CfpCountThreshold>
<TimeoutSeconds>180</TimeoutSeconds>
<ScriptDelayMsec>0</ScriptDelayMsec>
<NumSamples>6</NumSamples>
</Configuration>
</UnitMonitor>