Travaux à long terme

Microsoft.SQLServer.2014.Agent.LongRunningJobs (UnitMonitor)

Cette analyse recherche les travaux à long terme de l’Agent SQL. Remarque : cette analyse est désactivée par défaut. Utilisez des remplacements afin de l’activer, le cas échéant.

Knowledge Base article:

Résumé

Cette analyse recherche les travaux à long terme de l'Agent SQL. Une alerte d'avertissement ou d'erreur sera déclenchée si un travail s'est exécuté pendant une durée supérieure au seuil configuré.

Causes

Un fonctionnement anormal est dû à un travail de l'Agent SQL Server qui s'est exécuté pendant une durée supérieure au seuil configuré. Ceci peut indiquer un problème au niveau du travail.

L’Agent SQL Server est chargé de l’exécution des tâches SQL Server planifiées à des heures ou des intervalles spécifiques ainsi que de la détection de conditions particulières pour lesquelles les administrateurs ont défini une action, par exemple l’alerte d’une personne par radiomessagerie ou message électronique, ou une tâche traitant les conditions. L’Agent SQL Server est également utilisé pour exécuter des tâches de réplication définies par les administrateurs.

Pour identifier le travail qui a provoqué l'avertissement ou l'état d'erreur, examinez les données de contexte du changement d'état ou d'alerte.

Solutions

Vérifiez SQL Server Management Studio pour identifier les travaux exécutés. Si ces travaux s'exécutent durant une période plus longue que nécessaire, analysez-les pour en connaître la raison.

Utilisez sp_help_jobactivity pour afficher des informations sur les travaux en cours d'exécution.

Sinon, si vous supposez que certains travaux de l'agent s'exécutent pendant longtemps :

Paramètres remplaçables

Nom

Description

Valeur par défaut

Activé

 

Non

Génère des alertes

 

Oui

Intervalle (en secondes)

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

600

Heure de synchronisation

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

 

Seuil d'avertissement (en minutes)

Seuil d'avertissement. Dépasser ce seuil entraînera une modification de l'état de l'analyse vers avertissement au moins.

60

Seuil critique (en minutes)

L'analyse modifiera son état en Critique si la valeur dépasse ce seuil. Si la valeur est comprise entre ce seuil et le seuil d'avertissement (inclus), l'analyse sera en état d'avertissement.

120

Délai d'expiration (en 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.2014.Agent
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2014.AgentLongRunningJobsProvider
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL 2014 : travaux de longue durée
Il existe des travaux à long terme de l'Agent sur l'instance SQL {1} de l'ordinateur {0}. Ceci peut indiquer un problème avec un ou plusieurs travaux.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2014.Agent.LongRunningJobs" Accessibility="Public" Enabled="false" Target="SQL2014Core!Microsoft.SQLServer.2014.Agent" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2014.AgentLongRunningJobsProvider" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.Agent.LongRunningJobs.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UnderThreshold1" MonitorTypeStateID="UnderThreshold1" HealthState="Success"/>
<OperationalState ID="OverThreshold1UnderThreshold2" MonitorTypeStateID="OverThreshold1UnderThreshold2" HealthState="Warning"/>
<OperationalState ID="OverThreshold2" MonitorTypeStateID="OverThreshold2" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>600</IntervalSeconds>
<SyncTime/>
<ConnectionString>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ConnectionString$</ConnectionString>
<Threshold1>60</Threshold1>
<Threshold2>120</Threshold2>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>