每秒系统上下文切换次数(Windows Server 2016 及更高版本)

Microsoft.Windows.Server.10.0.OperatingSystem.SystemContextSwitchesPerSec.Collection (Rule)

性能计数器 System\Context Switches/sec 的收集规则

Knowledge Base article:

摘要

此规则收集 System\Context Switches/sec 性能计数器的性能数据。

System\Context Switches/sec 性能计数器显示计算机上的所有处理器全都从一个线程切换到另一个线程的综合速率。 在下列情况下可能会发生上下文切换:正在运行的线程自动放弃处理器,处理器由优先级较高的就绪线程先占,或在用户模式和特权(内核)模式之间切换,以便使用 Executive 服务或子系统服务。 它是在计算机的所有处理器上运行的全部线程的 Thread\\Context Switches/sec 总计,并且用转换数量衡量。 “系统”和“线程”对象上有上下文切换计数器。此计数器显示前两个示例中观察的值的差值除以示例间隔时间。

Element properties:

TargetMicrosoft.Windows.Server.10.0.OperatingSystem
CategoryPerformanceCollection
EnabledFalse
Instance NameSystem
Counter NameContext Switches/sec
Frequency300
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
PerformanceDS DataSource System.Performance.OptimizedDataProvider Default
WriteToDB WriteAction Microsoft.SystemCenter.CollectPerformanceData Default
WriteToDW WriteAction Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData Default

Source Code:

<Rule ID="Microsoft.Windows.Server.10.0.OperatingSystem.SystemContextSwitchesPerSec.Collection" Enabled="false" Target="ServervNext!Microsoft.Windows.Server.10.0.OperatingSystem">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="PerformanceDS" TypeID="SystemPerf!System.Performance.OptimizedDataProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Context Switches/sec</CounterName>
<ObjectName>System</ObjectName>
<InstanceName/>
<AllInstances>false</AllInstances>
<Frequency>300</Frequency>
<Tolerance>50</Tolerance>
<ToleranceType>Absolute</ToleranceType>
<MaximumSampleSeparation>12</MaximumSampleSeparation>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>