Longueur de la file d'attente des travaux du pool de traitement

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

La surveillance vous alerte quand la longueur de la file d'attente des travaux du pool de traitement pour l'instance SSAS dépasse le seuil configuré.

Knowledge Base article:

Résumé

La surveillance vous alerte quand la taille de la file d'attente des travaux du pool de traitement dépasse le seuil configuré. La mise en file d'attente peut indiquer que certaines requêtes ne sont pas exécutées en raison de l'attente d'un thread libre du pool, même si les travaux peuvent s'exécuter et être retournés rapidement.

Causes

L'insuffisance de threads disponibles du pool de traitement peut avoir lieu pour plusieurs raisons, notamment une configuration erronée des paramètres du serveur relatifs au pool ou une demande anormalement haute provenant des utilisateurs ou des travaux planifiés sur l'instance. Les threads utilisés pour exécuter les requêtes utilisateur, ainsi que les travaux de traitement sont tous alloués à partir du pool de traitement. Une charge de travail lourde peut donc ajouter une tension et entraîner ce problème.

Solutions

La résolution de cette alerte nécessite de la part des administrateurs qu'ils comprennent et prennent en compte de nombreux facteurs, notamment les exigences de charge de travail, les planifications des utilisateurs et des travaux, les planifications des autres processus sur le serveur et les ressources disponibles. Les actions visant à remédier à ce problème quand la taille de la file d'attente des travaux du pool de traitement dépasse le seuil configuré peuvent inclure les actions suivantes :

Externe

Configurer les propriétés du serveur dans Analysis Services

Guide des performances multidimensionnelles SSAS

Paramètres remplaçables

Nom

Description

Valeur par défaut

Activé

Active ou désactive le workflow

Oui

Génère des alertes

Définit si le workflow génère une alerte

Oui

Intervalle en secondes

L'intervalle de temps récurrent en secondes pendant lequel le workflow est exécuté.

900

Nombre d'échantillons

L'état d'intégrité change si le nombre de dépassement de seuil est supérieur ou égal au nombre minimal de dépassements.

4

Heure de synchronisation

L'heure de synchronisation spécifiée dans un format de 24 heures. Peut être omise.

 

Seuil d'avertissement

L'état d'intégrité change si le compteur de performances Analysis Services dépasse le seuil.

0

Délai d'attente (secondes)

Spécifie la durée pendant laquelle le workflow est autorisé à être exécuté avant d'être fermé et marqué comme un échec.

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 : Longueur de la file d'attente des travaux du pool de traitement dépassée.
La longueur de la file d'attente des travaux du pool de traitement pour l'instance SSAS {1} sur l'ordinateur {0} dépasse le seuil configuré.
Longueur actuelle de la file d'attente des travaux : {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>