Toto monitorování kontroluje stáří nejstarší zprávy ve frontě.
Toto monitorování kontroluje stáří nejstarší zprávy ve frontě.
Toto monitorování je standardně zakázané. Pokud má fungovat, je třeba ho povolit prostřednictvím přepsání.
Chování tohoto monitorování lze upravit a zadat jinou hodnotu nastavení následujících parametrů.
IntervalSeconds | Počet sekund mezi spuštěním testu. Pokud je nastavena příliš nízká hodnota, může způsobovat nadměrné zatížení služby MSMQ. Pokud je příliš vysoká, nemusí se stav chyby případně zjistit ve vhodném časovém úseku. Výchozí nastavení je 120 sekund (při kterém se test spouští každé 2 minuty). |
WarningThresholdValue | Stáří nejstarší zprávy v sekundách, při kterém by měl být generován stav upozornění. |
ErrorThresholdValue | Stáří nejstarší zprávy v sekundách, při kterém by měl být generován chybový stav. |
Za normálního provozu existuje předpoklad, že aplikace budou zprávy přijímat včas tak, jak jsou přidávány do fronty. Pokud určitá zpráva zůstane ve frontě delší dobu, je to známkou potíží s přijímající aplikací nebo se schopností aplikace číst z dané fronty.
Zkontrolujte stav připojení fronty nebo aplikací, které z ní mohou přijímat zprávy.
Target | Microsoft.MSMQ.10.0.Queues | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | AvailabilityHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.MSMQ.10.0.MonitorType.QueueStatistic.ThreeState | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.MSMQ.10.0.Monitor.Queue.OldestMessage" Accessibility="Public" Enabled="false" Target="Microsoft.MSMQ.10.0.Queues" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.MSMQ.10.0.MonitorType.QueueStatistic.ThreeState" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.MSMQ.10.0.Monitor.Queue.OldestMessage.AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ExceededErrorThreshold" MonitorTypeStateID="ErrorState" HealthState="Error"/>
<OperationalState ID="ExceededWarningThreshold" MonitorTypeStateID="WarningState" HealthState="Warning"/>
<OperationalState ID="WithinThreshold" MonitorTypeStateID="SuccessState" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<QueuePath>$Target/Property[Type="Microsoft.MSMQ.10.0.Queue"]/PathName$</QueuePath>
<CounterName>Oldest Message Age</CounterName>
<LogDetail>false</LogDetail>
<WarningThresholdValue>0</WarningThresholdValue>
<ErrorThresholdValue>0</ErrorThresholdValue>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>