MSMQ Service: Total bytes in all queues

Microsoft.MSMQ.2003.Monitor.TotalBytes.Baseline (UnitMonitor)

Monitor and baseline the "Total bytes in all queues" counter and alert if the value is larger than normal.

Knowledge Base article:

Summary

There is a larger than normal amount of data in all queues

Causes

There has been a sudden increase in message volumes, or messages have become larger than normal.

Resolutions

Determine whether the messages have increased in size, frequency or both and investigate the cause of the change(s).

Element properties:

TargetMicrosoft.MSMQ.2003.Server
Parent MonitorSystem.Health.PerformanceState
CategoryCustom
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.TwoStateAboveBaseliningMonitorWithoutCompression
RemotableTrue
AccessibilityPublic
Alert Message
Total Bytes
Please see the alert context for details.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.MSMQ.2003.Monitor.TotalBytes.Baseline" Accessibility="Public" Enabled="true" Target="Microsoft.MSMQ.2003.Server" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="SystemPerf!System.Performance.TwoStateAboveBaseliningMonitorWithoutCompression" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.MSMQ.2003.Monitor.TotalBytes.Baseline_AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Healthy" MonitorTypeStateID="Below" HealthState="Success"/>
<OperationalState ID="ExcessiveUsage" MonitorTypeStateID="Above" HealthState="Error"/>
</OperationalStates>
<Configuration>
<SignatureID>Microsoft.MSMQ.2003.Monitor.TotalBytes.Signature</SignatureID>
<DataSourceSettings>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<ObjectName>MSMQ Service</ObjectName>
<CounterName>Total bytes in all queues</CounterName>
<InstanceName/>
<AllInstances>false</AllInstances>
<Frequency>900</Frequency>
</DataSourceSettings>
<LearningAndBaseliningSettings>
<BusinessCycleLengthUnit>Week</BusinessCycleLengthUnit>
<BusinessCycleLengthInGivenUnit>1</BusinessCycleLengthInGivenUnit>
<LearningType>Continuous</LearningType>
<Offset1>1</Offset1>
<Offset2>1</Offset2>
<Offset3>1</Offset3>
<LearningRate>2</LearningRate>
<InitialNoAlertPeriodInBizCycles>1</InitialNoAlertPeriodInBizCycles>
<OuterSensitivity>3.31</OuterSensitivity>
<InnerSensitivity>2.81</InnerSensitivity>
</LearningAndBaseliningSettings>
<SignatureCollectionSettings>
<DBUpdatePeriodInSeconds>900</DBUpdatePeriodInSeconds>
</SignatureCollectionSettings>
</Configuration>
</UnitMonitor>