Bu izleyici, yapılandırılmış bellek eşikleri aşıldığı için uygulama havuzu geri dönüştürüldüğünde günlüğe kaydedilen olayları inceler ve uygulama havuzu çok sık geri dönüştürülüyorsa durumunu uyarı olarak değiştirir (izleyicinin yapılandırmasına göre). Bu, el ile sıfırlama izleyicisidir; yani otomatik olarak iyi durumuna geçmeyecektir. İzleyiciyi iyi durumuna geçirmek için sistem durumu gezginini kullanarak izleyiciyi sıfırlamanız gerekecektir.
Uygulama havuzu, sanal veya fiziksel bellek tüketimi yapılandırılmış sınıra ulaştığı için çok sık geri dönüştürülüyor. Bu, uygulama havuzunun yürüttüğü kodun içinde bellek sızıntısı olduğunun göstergesi olabilir.
Bu izleyici, yapılandırılmış bellek kullanım eşiğine (bu, IIS Yönetim araçlarında yapılandırılmıştır) ulaşılması nedeniyle gerçekleşen uygulama havuzu geri dönüştürme olaylarının sayısını bularak çalışır. Bu izleyici için yapılandırabileceğiniz iki parametre vardır. İlki, izleyicinin aradığı olayların yapılandırılmış zaman aralığında gerçekleşmesi gereken sayı olan "Yinelenme Sayısı"dır. İkinci parametre ise, izleyicinin olay yinelemelerini aradığı zaman aralığı olan "Dakika Sayısı"dır.
Uygulama havuzunun yürüttüğü kodun içinde bellek sızıntısı var.
Fiziksel veya sanal bellek sınırı çok düşük olarak ayarlı.
IIS Yöneticisi'ni kullanarak uygulama havuzu sınır ayarlarını denetlemek veya yapılandırmak için:
Başlat'a, Denetim Masası'na ve ardından Yönetimsel Araçlar'a tıklayın.
Internet Information Services (IIS) Yöneticisi'ne sağ tıklayın ve Yönetici olarak çalıştır'ı seçin.
Soldaki Bağlantılar bölmesinde bilgisayarı genişletin, ardından bilgisayar adının altındaki Uygulama Havuzları klasörünü seçin.
Özellikler Görünümü'nde uygulama havuzunu seçin. Eylemler bölmesinde, Gelişmiş Ayarlar seçeneğini belirleyin.
Uygun bölümler altında uygulama havuzu sınırlarının ayarlarını denetleyin veya yapılandırın.
Not: Bu bir el ile sıfırlama izleyicisi olduğundan, sorunu giderdikten sonra bu izleyicinin durumunu sistem durumu gezgininde sıfırlamanız gerekecektir. Bunu izleyiciye sağ tıklayarak ve "Sistem Durumunu Sıfırla" menü öğesini seçerek yapabilirsiniz. İzleyiciyi el ile sıfırlamazsanız, iyi durumuna geçmeyecektir.
Target | Microsoft.Windows.InternetInformationServices.10.0.ApplicationPool | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Windows.InternetInformationServices.10.0.RepeatedEventLogManualReset2StateMonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.Windows.InternetInformationServices.10.0.ApplicationPool.MemoryLeak.Monitor" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.InternetInformationServices.10.0.ApplicationPool" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.Windows.InternetInformationServices.10.0.RepeatedEventLogManualReset2StateMonitorType" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.InternetInformationServices.10.0.ApplicationPool.MemoryLeak.Monitor_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="IISCommon!Microsoft.Windows.InternetInformationServices.ApplicationPool"]/PoolID$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="PotentialMemoryLeakDetected" MonitorTypeStateID="RepeatedEventRaised" HealthState="Warning"/>
<OperationalState ID="Healthy" MonitorTypeStateID="ManualResetEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<RepeatedComputerName>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</RepeatedComputerName>
<RepeatedLogName>System</RepeatedLogName>
<RepeatedExpression>
<And>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(5117|5077)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-WAS</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[2]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="IISCommon!Microsoft.Windows.InternetInformationServices.ApplicationPool"]/PoolID$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</RepeatedExpression>
<NumberOfSeconds>3600</NumberOfSeconds>
<NumberOfOccurrences>10</NumberOfOccurrences>
</Configuration>
</UnitMonitor>