İşlemci\\% İşlemci Zamanı\_Toplam ve Sistem\İşlemci Sırası Uzunluğu performans sayaçlarını bağıntılandırarak bu sunucunun toplam CPU kullanımını izler.
Sistem işlemcilerinin CPU Kullanımı (İşlemci\% İşlemci Zamanı\_Toplam ve Sistem Sırası Uzunluğu) eşiği aşmıştır. Eşik aşıldığında genel sistem performansı önemli düzeyde düşebilir, bu da işletim sisteminin ve uygulamanın performansının düşmesine neden olur.
Toplam CPU Kullanımı izleme yordamı, İşletmenlerin hem Sistem\İşlemci Sırası hem de İşlemci\% İşlemci Zamanı\_Toplam performans sayaçları için eşik değerleri belirlemesini sağlayan üst düzeyde yapılandırılabilir bir çözümdür. Her iki sayacın değerleri tanımlı eşikleri ardışık birkaç örnekte aştığında, izleyicide bir durum değişikliği oluşur. Durum değişmeden önce eşiğin üzerinde örneklenmesi gereken ardışık örnek sayısı da ayrıca yapılandırılabilir.
Toplam CPU Kullanım izleme yordamının varsayılan eşik değerleri şunları içerir:
Parametre | Varsayılan Değer |
CPUQueueLengthThreshold | 15 |
CPUPercentageThreshold | 95 |
NumSamples | 5 |
Yukarıda tanımlı eşik değerlerinden herhangi birini değiştirmek için Geçersiz Kılmalar kullanılabileceğini unutmayın.
Bir bilgisayar uzun bir süre boyunca önemli bir yük altında kaldığında, buna aşağıdaki koşullardan biri neden olmuş olabilir:
Bilgisayara yüklü uygulama kümesinin kaynak gereksinimleri, bilgisayarın donanım yapılandırmasının yeteneklerini aşıyordur.
Bilgisayardan istenen kaynaklar zaman içinde artmıştır ve bilgisayar donanım yapılandırması artık artan istekleri karşılayamıyordur.
Bilgisayarda çalışmakta olan bir uygulama iyi olmayan bir duruma girmiştir ve artık düzensiz miktarlarda sistem kaynağı istemektedir.
İşlemci ile ilişkili performans sayaçlarının yakın geçmişini görüntülemek için aşağıdaki görünümü kullanabilirsiniz:
İşlemci Performansı Başlatma Görünümü
Bu sorunu çözümlemek için, bir yönetici şu görevleri gerçekleştirebilir:
1. Sunucuda çalışan her bir işlem için İşlemci Kullanım Yüzdesi sayacını değerlendirme. Bu, Görev Yöneticisi veya Performans İzleme bileşeni kullanılarak yapılabilir. Hangi işlemlerin en çok kaynağı tükettiğini belirleyin ve bunların normal performans aralıklarına dönmekte olup olmadıklarını belirlemek için bunları bir süre izleyin. Dönmezlerse, sorunu çözümlemenin en uygun yolunu belirlemek için uygulamaya özgü ek tanılamalar gerçekleştirilmelidir.
2. İstemci yükünün zamanla arttığı ve bilgisayarın artık isteği karşılayamadığı belirlenirse, temel donanım yükseltmelerinin bilgisayarın en iyi performans aralıklarına dönmesini sağlayıp sağlayamayacağını belirlemek için ek performans izleme yordamları gerçekleştirme.
3. Uygulamanın üründeki bir kusur nedeniyle iyi olmayan bir duruma girdiği belirlenirse, uygulamayı yeniden başlatmak gerekebilir. Sorun devam ederse, uygulama satıcısıyla bağlantı kurmanız gerekebilir.
Target | Microsoft.Windows.Server.2003.OperatingSystem | ||
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.Windows.Server.2003.CPUUtilization.Monitortype | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.Windows.Server.2003.OperatingSystem.TotalCPUUtilization" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.Server.2003.OperatingSystem" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.Windows.Server.2003.CPUUtilization.Monitortype" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2003.OperatingSystem.TotalCPUUtilization.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='PctUsage']$</AlertParameter1>
<AlertParameter2>$Data/Context/Property[@Name='QueueLength']$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="OverThreshold" MonitorTypeStateID="CPUUtilizationHigh" HealthState="Error"/>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="CPUUtilizationNormal" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<TimeoutSeconds>100</TimeoutSeconds>
<TargetComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</TargetComputerName>
<CPUPercentageThreshold>95</CPUPercentageThreshold>
<CPUQueueLengthThreshold>15</CPUQueueLengthThreshold>
<NumSamples>3</NumSamples>
<CounterName>% Processor Time</CounterName>
<ObjectName>Processor</ObjectName>
<InstanceName>_Total</InstanceName>
<AllInstances>false</AllInstances>
</Configuration>
</UnitMonitor>