Utilisation de processeur (\%) pour le moteur de base de données MSSQL.
Le moniteur mesure la durée réelle d'utilisation des threads de processus de SQL Server par les processeurs. Notez que l'intervalle d'exécution du moniteur ne doit pas être inférieur à 60 secondes et doit être divisible par 60. Sinon, les données retournées sont inexactes.
Tous les processeurs alloués sont occupés par le traitement des tâches SQL Server.
Déterminez pourquoi SQL Server utilise un pourcentage élevé de processeurs à l'aide des compteurs SQL Server d'analyse des performances et des vues DMV liées aux performances, telles que sys.dm_exec_query_stats.
Résolution des problèmes de performances dans SQL Server
http://go.microsoft.com/fwlink/?LinkId=789165
Créer une session d'événements étendus
https://msdn.microsoft.com/fr-fr/library/hh213147.aspx
Nom | Description | Valeur par défaut |
Priorité d'alerte | Définit la priorité de l'alerte. | Normale |
Gravité d'alerte | Définit la gravité de l'alerte. | Erreur |
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 de seuil d'une valeur mesurée avant que l'état soit changé. | 6 |
Heure de synchronisation | Heure de la synchronisation spécifiée selon un format de 24 heures. Peut être omise. |
|
Seuil | La valeur collectée sera comparée avec ce paramètre. | 90 |
Délai d'expiration (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é. | 200 |
Délai d’attente pour la connexion de base de données (secondes) | Le workflow échoue et enregistre un événement s’il ne peut pas accéder à la base de données pendant la période spécifiée. | 15 |
Target | Microsoft.SQLServer.Windows.DBEngine | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.Windows.MonitorType.DBEngine.CPUUtilization | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.Windows.Monitor.DBEngine.CPUUtilization" Accessibility="Public" Enabled="true" Target="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Windows.MonitorType.DBEngine.CPUUtilization" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Windows.Monitor.DBEngine.CPUUtilization.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Normal" MonitorTypeStateID="Normal" HealthState="Success"/>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
</OperationalStates>
<Configuration>
<MachineName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<NetbiosComputerName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<MonitoringType>$Target/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/MonitoringType$</MonitoringType>
<Threshold>90</Threshold>
<NumSamples>6</NumSamples>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>