Utilisation du processeur (\%)

Microsoft.SQLServer.2016.DBEngine.CPUUsagePercentMonitor (UnitMonitor)

Utilisation du processeur (\%) du moteur de base de données 2016

Knowledge Base article:

Résumé

Fournit une mesure de la durée passée réellement par les processeurs travaillant sur les threads de processus SQL Server.

Causes

Tous les processeurs alloués sont occupés par le traitement des tâches SQL Server.

Solutions

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 2016

http://go.microsoft.com/fwlink/?LinkId=789165

Créer une session d'événements étendus

http://go.microsoft.com/fwlink/?LinkId=799311

Paramètres remplaçables

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.

Erreur

Délai d'expiration du cache

Spécifie l'âge maximal des informations du cache que le flux de travail peut utiliser. Peut être omis.

43200

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)

L'intervalle de temps récurrent en secondes pendant lequel le workflow est exécuté.

300

Nombre d'échantillons

Indique le nombre de dépassements de seuil d'une valeur mesurée avant la modification de l'état.

6

Heure de synchronisation

L'heure de synchronisation spécifiée dans un format de 24 heures. Peut être omise.

00:18

Seuil

La valeur collectée sera comparée avec ce paramètre.

95

Délai d'expiration (en secondes)

Spécifie la durée pendant laquelle le workflow est autorisé à être exécuté avant d'être fermé et marqué comme un échec.

200

Element properties:

TargetMicrosoft.SQLServer.2016.DBEngine
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2016.DBEngine.CPUUsagePercent.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL 2016 : l’utilisation du processeur (en \%) est trop élevée
L’utilisation du processeur de l’instance SQL « {0} » sur l’ordinateur « {1} » est trop élevée. Pour plus d’informations, consultez l’onglet « Contexte de l’alerte ».
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2016.DBEngine.CPUUsagePercentMonitor" Accessibility="Public" Enabled="true" Target="SQL2016Core!Microsoft.SQLServer.2016.DBEngine" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2016.DBEngine.CPUUsagePercent.MonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.DBEngine.CPUUsagePercentMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Normal" MonitorTypeStateID="Normal" HealthState="Success"/>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<Threshold>95</Threshold>
<NumSamples>6</NumSamples>
<SyncTime/>
<CacheExpirationTime>43200</CacheExpirationTime>
</Configuration>
</UnitMonitor>