Worker Internal Queue Length

Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.Monitor.WorkerInternalQueueLength (UnitMonitor)

Monitors performance counter Worker Internal Queue Length.

Knowledge Base article:

Summary

Monitors the internal queue length on the Service Management Automation Worker server.

Causes

The length of the internal queue length is zero indicating that the worker is idle.

Resolution

This situation should resolve automatically when jobs are submitted and worker’s internal queue length is no longer empty.

Configuration

The following options can be configured on this monitor:

Option

Definition

Default

Alert On State

Health state for the monitor that generates an alert.

The monitor is in a critical health state

Alert Priority

Priority of the alert generated for this monitor.

Medium

Alert Severity

Priority of the alert generated for this monitor.

Critical

Auto-Resolve Alert

Specifies whether the alert should automatically be resolved when the monitor returns to a healthy state.

True

CounterName

Name of the performance counter. This value should not be overridden except by a language pack.

WorkerThrottlingMode

Enabled

Specifies whether the monitor should run.

True

Generates Alert

Specifies whether the monitor should generate an alert when changing to a warning or critical state.

True

Element properties:

TargetMicrosoft.SystemCenter.ServiceManagementAutomation.2012R2.Server.Worker
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SystemCenter.ServiceManagementAutomation.2012R2.Performance.MonitorType.ConsecutiveSamplesThreshold
RemotableTrue
AccessibilityPublic
Alert Message
Worker Internal Queue Length
Worker Internal Queue Length has exceeded threshold. Last measured value is {0}.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.Monitor.WorkerInternalQueueLength" Accessibility="Public" Enabled="true" Target="Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.Server.Worker" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.Performance.MonitorType.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.Monitor.WorkerInternalQueueLength.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ConditionTrue" MonitorTypeStateID="ConditionTrue" HealthState="Warning"/>
<OperationalState ID="ConditionFalse" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Worker Internal Queue Length</CounterName>
<ObjectName>Orchestrator Worker Performance Counters</ObjectName>
<InstanceName/>
<AllInstances>true</AllInstances>
<Frequency>600</Frequency>
<ScaleBy>1</ScaleBy>
<Threshold>30</Threshold>
<Direction>greater</Direction>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>