CPU-Auslastung (\%)

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

CPU-Auslastung (\%) für 2014-Datenbankmodul

Knowledge Base article:

Zusammenfassung

Stellt ein Maß dafür bereit, wie viel Zeit Prozessoren tatsächlich mit der Verarbeitung der Prozessthreads von SQL Server verbringen.

Ursachen

Alle zugeordneten CPUs sind ausgelastet, indem sie SQL Server-Tasks verarbeiten.

Lösungen

Analysieren Sie, warum SQL Server einen hohen Prozentsatz der CPU nutzt, indem Sie den Systemmonitor, SQL Server-Leistungsindikatoren und leistungsbezogene DMVs wie "sys.dm_exec_query_stats" verwenden.

Behebung von Leistungsproblemen in SQL Server 2014

http://technet.microsoft.com/library/dd672789(v=sql.100).aspx

Erstellen einer Sitzung für erweiterte Ereignisse

http://technet.microsoft.com/library/hh213147.aspx

Parameter, die außer Kraft gesetzt werden können

Name

Beschreibung

Standardwert

Aktiviert

 

Ja

Generiert Warnungen

 

Ja

Intervall (Sekunden)

Das periodische Intervall in Sekunden, in dem der Workflow ausgeführt werden soll.

300

Anzahl der Stichproben

Gibt an, wie oft ein gemessener Wert einen Schwellenwert verletzen soll, bevor der Status geändert wird.

6

Schwellenwert

Der ermittelte Wert wird mit diesem Parameter verglichen.

95

Timeout (Sekunden)

Gibt die Zeit an, die der Workflow ausgeführt werden darf, bevor er geschlossen und als fehlgeschlagen markiert wird.

200

Element properties:

TargetMicrosoft.SQLServer.2014.DBEngine
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2014.DBEngine.CPUUsagePercent.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL 2014: CPU-Auslastung (\%) ist zu hoch
CPU-Auslastung von SQL-Instanz "{0}" auf dem Computer "{1}" ist zu hoch. Ausführliche Informationen finden Sie auf der Registerkarte "Warnungskontext".
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2014.DBEngine.CPUUsagePercentMonitor" Accessibility="Public" Enabled="true" Target="SQL2014Core!Microsoft.SQLServer.2014.DBEngine" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2014.DBEngine.CPUUsagePercent.MonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.DBEngine.CPUUsagePercentMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.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>
</Configuration>
</UnitMonitor>