Ce moniteur vérifie l'état des agents de fusion pour tous les abonnements sur le serveur de distribution.
L’Agent de fusion de réplication est un fichier exécutable d’utilitaire qui applique aux abonnés l’instantané initial contenu dans les tables de base de données. Il fusionne également les modifications de données incrémentielles intervenues sur le serveur de publication après la création de la capture instantanée initiale, puis résout les conflits, soit en fonction des règles que vous configurez, soit à l’aide d’un programme de résolution personnalisé que vous créez.
Un agent de fusion peut échouer pour l'une des raisons suivantes :
L'Agent de fusion ne peut pas se connecter au serveur de publication.
L'Agent de fusion ne peut pas se connecter à l'abonné.
Les métadonnées de réplication de fusion ont été supprimées sur l’abonné. Cela peut se produire quand l’Agent de fusion n’a pas été synchronisé durant la période de rétention définie.
L'abonnement est marqué comme ayant expiré.
Erreurs de dépassement du délai d'attente de la requête.
Erreurs de connectivité réseau.
L'Agent de fusion ne peut pas démarrer en raison d'un épuisement de la mémoire pour le segment de Bureau non-interactif.
Paramètres incorrects passés à l'exécutable de l'Agent.
Ce problème peut être résolu en s'assurant que :
L’Agent de fusion peut se connecter tant à l’éditeur qu’à l’abonné. Assurez-vous que le compte de l’Agent de fusion est ajouté au rôle fixe db_owner sur les bases de données de l’éditeur et de l’abonné.
Quand l’abonnement est marqué pour expiration, réinitialisez-le.
Il n’y a pas de problèmes de réseau ou de connectivité entre les serveurs pendant l’exécution de l’Agent de fusion.
Si les métadonnées de l’abonnement ont été supprimées sur le serveur de publication, supprimez et recréez l’abonnement. Cela peut se produire quand l’Agent de fusion n’a pas été synchronisé durant la période de rétention.
Assurez-vous que les paramètres transmis à l’Agent de fusion sont corrects.
Interrogez les tables msmerge_agents et msmerge_history sur la base de données de distribution pour obtenir plus d'informations sur l'échec de l'Agent. La table Msrepl_errors contient également des informations sur les échecs d'agents.
Problème de tas du Bureau
http://support.microsoft.com/kb/949296
Agent de fusion de la réplication
http://msdn.microsoft.com/library/ms147839.aspx
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. | Erreur |
Activé | Active ou désactive le flux de travail. | Oui |
Durée estimée du travail | Seuil utilisé pour vérifier la conformité de la planification du travail | 15 |
Génère des alertes | Définit si le flux de travail génère une alerte. | Oui |
Intervalle (secondes) | Intervalle de temps récurrent en secondes, pendant lequel le workflow est exécuté. | 300 |
Afficher les travaux avec un état inconnu | Incluez les travaux dont l’état est inconnu dans la sortie de l’analyse et le contexte de l’alerte. Cela affecte l’intégrité. | Non |
Heure de synchronisation | Heure de synchronisation |
|
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 |
Délai d’attente pour la connexion de base de données (secondes) | Le workflow échoue et enregistre un événement s’il ne peut pas accéder à la base de données pendant la période spécifiée. | 15 |
Target | Microsoft.SQLServer.2014.Replication.Distributor | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2014.Replication.MonitorType.ReplicationAgentState | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Microsoft.SQLServer.Replication.Monitoring.RunAs.Monitor |
<UnitMonitor ID="Microsoft.SQLServer.2014.Replication.Monitor.MergeAgentState" Accessibility="Public" Enabled="true" Target="MS2RD!Microsoft.SQLServer.2014.Replication.Distributor" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2014.Replication.MonitorType.ReplicationAgentState" ConfirmDelivery="false" RunAs="MSRL!Microsoft.SQLServer.Replication.Monitoring.RunAs.Monitor">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.Replication.Monitor.MergeAgentState.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='Message']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Health" MonitorTypeStateID="Health" HealthState="Success"/>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="Warning" MonitorTypeStateID="Warning" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<SqlTimeout>15</SqlTimeout>
<ConnectionString>$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Library.GenericDistributor']/ConnectionString$</ConnectionString>
<XPathName>Merge$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Library.GenericDistributor']/ConnectionString$</XPathName>
<ShowJobsWithUnknownState>false</ShowJobsWithUnknownState>
<EstimatedJobDuration>15</EstimatedJobDuration>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>