Un travail de SQL Server Agent a échoué. SQL Server Agent est responsable 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, comme l'alerte d'une personne par radiomessagerie ou par e-mail, ou une tâche répondant aux conditions. SQL Server Agent est également utilisé pour exécuter des tâches de réplication définies par les administrateurs. Remarque : Cette règle est désactivée par défaut. Utilisez des remplacements pour l'activer en cas de besoin.
Un travail de l'Agent SQL Server a échoué. Celui-ci 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.
Cette règle détecte uniquement l'échec des travaux indiqué par une notification d'échec dans le journal des événements. Pour configurer un travail avec une notification dans le journal des événements, vous pouvez procéder comme suit :
Exécutez SQL Server Management Studio.
Développez un groupe de serveurs, puis développez un serveur.
Développez Gestion, puis développez SQL Server Agent.
Cliquez avec le bouton droit sur le travail approprié et choisissez « Propriétés ».
Sélectionnez la section Notifications.
Cochez la case « Écrire dans le journal des événements de l'application Linux ».
Sélectionnez « En cas d'échec du travail » ou « Quand le travail est terminé ».
Pour résoudre cet échec, consultez les événements associés à l'alerte pour déterminer les travaux et étapes spécifiques ayant échoué. Vérifiez également les résultats historiques du travail pour déterminer la date de dernière exécution du travail. Pour consulter l'historique d'exécution du travail, procédez comme suit :
Exécutez SQL Server Management Studio.
Développez un groupe de serveurs, puis développez un serveur.
Développez Gestion, puis développez SQL Server Agent.
Cliquez avec le bouton droit sur le travail approprié et choisissez « Afficher l'historique des travaux ».
Par ailleurs, vérifiez si le compte de service utilisé par SQL Server Agent est membre du groupe Utilisateurs du domaine. Le compte LocalSystem n'a pas de droits d'accès au réseau. Par conséquent, si vos travaux nécessitent des ressources sur le réseau ou si vous voulez notifier les opérateurs par radiomessagerie ou par e-mail, vous devez définir le compte utilisé par le service SQL Server Agent comme membre du groupe Utilisateurs du domaine.
Nom | Description | Valeur par défaut |
Activé | Active ou désactive le flux de travail. | Non |
Intervalle (en secondes) | Intervalle régulier (en secondes) auquel exécuter le flux de travail. | 300 |
Priorité | Définit la priorité de l'alerte. | 1 |
Severity | Defines Alert Severity. | 2 |
Synchronization Time | Synchronization Time |
|
Timeout (seconds) | Specifies the time the workflow is allowed to run before being closed and marked as failed. | 200 |
Timeout for database connection (seconds) | The workflow will fail and register an event, if it cannot access the database during the specified period. | 15 |
Target | Microsoft.SQLServer.Linux.Agent | ||
Category | EventCollection | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Comment | Mom2017ID='{8CCE3391-B79E-4182-922E-BB540ED8396E}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74} |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ | DataSource | Microsoft.SQLServer.Linux.DataSource.EventCollectionFilteredAgent | Default |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SQLServer.Linux.CollectionRule.Agent.A_SQL_job_failed_to_complete_successfully_1_5_Rule" Target="SqlDiscL!Microsoft.SQLServer.Linux.Agent" Enabled="false" ConfirmDelivery="true" Remotable="true" Comment="Mom2017ID='{8CCE3391-B79E-4182-922E-BB540ED8396E}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Microsoft.SQLServer.Linux.DataSource.EventCollectionFilteredAgent">
<MachineName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<NetbiosComputerName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<SqlExecTimeoutSeconds>60</SqlExecTimeoutSeconds>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<EventDisplayNumber>208</EventDisplayNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.Linux.CollectionRule.Agent.A_SQL_job_failed_to_complete_successfully_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>Event ID: $Data/Property[@Name='EventID']$. $Data/Property[@Name='Message']$</AlertParameter3>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/Params/Param[1]$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>