Длина очереди заданий пула обработки

Microsoft.SQLServer.2014.AnalysisServices.UnitMonitor.Instance.ProcessingPoolJobQueueLength (UnitMonitor)

Монитор создает предупреждение, если длина очереди заданий для пула обработки экземпляра SSAS превышает заданное пороговое значение.

Knowledge Base article:

Сводка

Монитор создает предупреждение, когда размер очереди заданий для пула обработки превышает заданное пороговое значение. Помещение в очередь может означать, что некоторые запросы могут не выполняться из-за ожидания свободного потока из пула, даже если сами задания быстро выполняются и возвращают управление.

Причины

Исчерпание доступных потоков пула обработки может возникнуть по ряду причин, включая неправильную настройку сервера, негативно влияющую на пул, или слишком большое количество обращений со стороны пользователей или запланированных заданий в экземпляре. Потоки для выполнения пользовательских запросов и обработки заданий распределяются из пула обработки, поэтому высокая рабочая нагрузка может привести к этому состоянию.

Решения

При разрешении этого предупреждения администраторам требуется понимать и учитывать множество факторов, в том числе требования к рабочей нагрузке, сведения о пользователях и расписания заданий, другие запланированные процессы на компьютере сервера и доступные ресурсы. Для устранения состояния, при котором размер очереди заданий пула обработки превышает заданное пороговое значение, может потребоваться любое из перечисленных ниже действий:

Внешнее

Настройка свойств сервера для служб Analysis Services

Документация TechNet по счетчикам производительности SSAS

Руководство по настройке производительности многомерных служб SSAS

Переопределяемые параметры

Название

Описание

Значение по умолчанию

Включено

Включает или отключает поток процесса

Да

Создает предупреждения

Определяет, создает ли рабочий процесс предупреждения

Да

Интервал (в секундах)

Повторяющийся интервал времени в секундах, по истечении которого запускается рабочий процесс.

900

Число выборок

Состояние работоспособности изменяется, если количество нарушений порогового значения больше или равно минимальному количеству нарушений.

4

Время синхронизации

Время синхронизации указывается в 24-часовом формате и может быть опущено.

 

Пороговое значение предупреждения

Состояние работоспособности изменяется, если значение счетчика производительности служб Analysis Services превышает пороговое значение.

0

Время ожидания (секунды)

Определяет время, в течение которого возможно выполнение рабочего процесса перед закрытием и пометкой как сбойный.

300

Element properties:

TargetMicrosoft.SQLServer.2014.AnalysisServices.Instance
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2014.AnalysisServices.MonitorType.Instance.CommonPerformanceData
RemotableTrue
AccessibilityPublic
Alert Message
SSAS 2014: превышена длина очереди заданий пула обработки.
Длина очереди заданий пула обработки для экземпляра SSAS {1} на компьютере {0} превышает сконфигурированное пороговое значение.
Текущая длина очереди заданий пула обработки: {2}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2014.AnalysisServices.UnitMonitor.Instance.ProcessingPoolJobQueueLength" Accessibility="Public" Enabled="true" Target="SQLAS!Microsoft.SQLServer.2014.AnalysisServices.Instance" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2014.AnalysisServices.MonitorType.Instance.CommonPerformanceData" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.AnalysisServices.UnitMonitor.Instance.ProcessingPoolJobQueueLength.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SQLAS!Microsoft.SQLServer.2014.AnalysisServices.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Data/Context/Value$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="Healthy" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="Warning" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<PerformanceCounterName>Processing pool job queue length</PerformanceCounterName>
<CounterName>Processing pool job queue length</CounterName>
<Threshold>0</Threshold>
<SampleCount>4</SampleCount>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>