Comprimento da Fila de Trabalho de E/S do Pool de Processamento

Microsoft.SQLServer.2016.AnalysisServices.UnitMonitor.Instance.ProcessingPoolIOJobQueueLength (UnitMonitor)

O monitor alertará quando o tamanho da fila de trabalho de E/S 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 de E/S 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. O enfileiramento do pool de trabalho de E/S indica que existe um estrangulamento de E/S no servidor.

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 de E/S do pool de processamento excede o limite configurado podem incluir várias das seguintes ações:

Externo

Configurar propriedades do servidor no Analysis Services

Documentação TechNet para os Contadores de Desempenho do SSAS

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.2016.AnalysisServices.Instance
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2016.AnalysisServices.MonitorType.Instance.CommonPerformanceData
RemotableTrue
AccessibilityPublic
Alert Message
SSAS 2016: Comprimento da Fila de Trabalho de E/S do Pool de Processamento excedido.
O tamanho fila de trabalho de E/S 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.2016.AnalysisServices.UnitMonitor.Instance.ProcessingPoolIOJobQueueLength" Accessibility="Public" Enabled="true" Remotable="true" Priority="Normal" Target="SQLAS!Microsoft.SQLServer.2016.AnalysisServices.Instance" TypeID="Microsoft.SQLServer.2016.AnalysisServices.MonitorType.Instance.CommonPerformanceData" ParentMonitorID="SystemHealth!System.Health.PerformanceState" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.AnalysisServices.UnitMonitor.Instance.ProcessingPoolIOJobQueueLength.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.2016.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 I/O job queue length</PerformanceCounterName>
<CounterName>Processing pool I/O job queue length</CounterName>
<Threshold>0</Threshold>
<SampleCount>4</SampleCount>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>