Comprimento da Fila de Trabalho do Pool de Processamento

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

O monitor alertará quando o comprimento da fila de trabalho do pool de processamento para a instância do SSAS for maior do que o limite configurado.

Knowledge Base article:

Resumo

O monitor alertará quando o tamanho da fila de trabalho do pool de processamento exceder o limite configurado. Colocar em fila pode indicar que algumas solicitações não podem ser executadas devido à espera por um thread livre do pool, mesmo que os trabalhos sejam executados e retornados rapidamente.

Causas

O esgotamento dos threads disponíveis do pool de processamento pode ocorrer por vários motivos, incluindo a definição incorreta das configurações do servidor afetando o pool ou a demanda anormalmente alta de usuários ou trabalhos agendados na instância. Os threads para executar as consultas do usuário, assim como os trabalhos de processamento, são alocados do pool de processamento; assim, uma carga de trabalho pesada pode adicionar estresse, levando a essa condição.

Resoluções

Resolver esse alerta exige que os administradores compreendam e considerem vários fatores, incluindo, mas não se limitando, a requisitos da carga de trabalho, programações do usuário e de trabalho, outros processos agendados no computador servidor e os recursos disponíveis. As ações para solucionar a condição quando o tamanho da fila de trabalho do pool de processamento excede o limite configurado podem incluir várias das seguintes ações:

Externo

Configurar propriedades do servidor no Analysis Services

Guia de Desempenho Multidimensional do SSAS

Parâmetros Substituíveis

Nome

Descrição

Valor padrão

Habilitado

Habilita ou desabilita o fluxo de trabalho

Sim

Gerar Alertas

Define se o fluxo de trabalho gera um Alerta

Sim

Intervalo em Segundos

O intervalo de tempo recorrente em segundos no qual executa-se o fluxo de trabalho.

900

Número de amostras

O Estado da Integridade mudará se o número de violações do limite for maior ou igual ao Número Mínimo de Violações.

4

Hora da Sincronização

A hora da sincronização especificada usando um formato de 24 horas. Pode ser omitido.

 

Limite de Aviso

O Estado de Integridade mudará se o contador de desempenho do Analysis Services exceder o limite.

0

Tempo limite (segundos)

Especifica o tempo que o fluxo de trabalho pode funcionar antes de ser fechado e marcado como com falha.

300

Element properties:

TargetMicrosoft.SQLServer.2008.AnalysisServices.Instance
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2008.AnalysisServices.MonitorType.PerformanceCounterThreads
RemotableTrue
AccessibilityPublic
Alert Message
SSAS 2008: Comprimento da Fila de Trabalho do Pool de Processamento excedido.
O tamanho da fila de trabalho do pool de processamento para a instância do SSAS {1} no computador {0} excede o limite configurado.
Tamanho da fila de trabalho atual: {2}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2008.AnalysisServices.UnitMonitor.Instance.ProcessingPoolJobQueueLength" Accessibility="Public" Enabled="true" Target="SQLAS!Microsoft.SQLServer.2008.AnalysisServices.Instance" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2008.AnalysisServices.MonitorType.PerformanceCounterThreads" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2008.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.2008.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>