Monitoruje hodnotu čítače „Nesdílené bajty“ příslušného procesu služby MSMQ. Pokud je hodnota větší než prahová, zobrazí výstrahu.
Počet nesdílených bajtů využívaných službou MSMQ překračuje standardní hodnoty. Záležitost je třeba prošetřit.
Pokud se využití nesdílených bajtů ustálí nebo opět klesne pod standardní hodnoty, mohl být příčinou potíží dočasný nárůst aktivity.
Pokud se bude počet nesdílených bajtů procesu MQSVC nadále zvyšovat, zjistěte, zda nedochází k odpovídajícímu zvýšení počtu nebo velikosti zpráv, které by kladlo nároky na vyšší využití paměti.
Pokud nebudou zjištěny žádné další potíže, uvažte, zda by nebylo vhodné službu restartovat a obnovit přidělení paměti. Pokud dané potíže nastanou znovu, může být potřeba provést další ladění s cílem prošetřit zdroj využití paměti.
Target | Microsoft.MSMQ.10.0.Servers | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | Custom | ||
Enabled | True | ||
Instance Name | Process | ||
Counter Name | Private Bytes | ||
Frequency | 900 | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | System.Performance.ConsecutiveSamplesThreshold | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.MSMQ.10.0.Monitor.Memory" Accessibility="Public" Enabled="true" Target="Microsoft.MSMQ.10.0.Servers" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="SystemPerf!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.MSMQ.10.0.Monitor.Memory.AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters/>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
<OperationalState ID="OverThreshold" MonitorTypeStateID="ConditionTrue" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Private Bytes</CounterName>
<ObjectName>Process</ObjectName>
<InstanceName>mqsvc</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>900</Frequency>
<Threshold>104857600</Threshold>
<Direction>greater</Direction>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>