Ce moniteur vérifie les tâches SQL Agent de longue durée.
Notez que le service Windows de SQL Server Agent n'est pris en charge par aucune édition de SQL Server Express ; aucun objet approprié n'est découvert. Ce moniteur est désactivé par défaut. Utilisez des remplacements pour l'activer quand c'est nécessaire.
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é.
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.
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 :
Remplacez l'analyse afin de modifier les seuils de cette instance spécifique de SQL ou de toutes les instances
Désactivez l'analyse de cette instance spécifique de SQL ou de toutes les instances
Nom | Description | Valeur par défaut |
Priorité de l'alerte | Définit la priorité de l'alerte. | Normal |
Gravité de l'alerte | Définit la gravité de l'alerte. | MatchMonitorHealth |
Seuil critique (en minutes) | Le moniteur passe à l’état Critique si la valeur dépasse ce seuil. Le moniteur passe à l’état Avertissement si la valeur est comprise entre ce seuil et le seuil d’avertissement inclus. | 120 |
Activé | Active ou désactive le flux de travail. | Non |
Génère des alertes | Définit si le flux de travail génère une alerte. | 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. |
|
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 |
Seuil d'avertissement (en minutes) | Seuil d'avertissement. Le dépassement de ce seuil a pour effet de basculer le moniteur vers l'état d’avertissement au minimum. | 60 |
Target | Microsoft.SQLServer.2014.Agent | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2014.AgentLongRunningJobsProvider | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<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>