Estado do Agente de Mesclagem de Replicação para Assinatura

Microsoft.SQLServer.Replication.Windows.Monitor.SubscriptionMergeAgentState (UnitMonitor)

Este monitoramento verifica o status do serviço do Agente de Mesclagem de Replicação por Assinatura. Observe que o Serviço Windows do SQL Server Agent não tem suporte em nenhuma edição do SQL Server Express. Portanto, esse monitoramento não se aplica aos casos do SQL Server Express.

Knowledge Base article:

Resumo

O Agente de Mesclagem de Replicação é um executável que aplica aos Assinantes o instantâneo inicial mantido nas tabelas de banco de dados. Ele também mescla as alterações incrementais de dados ocorridas no Publicador após a criação do instantâneo inicial. O agente também reconcilia conflitos usando as regras configuradas ou usa um resolvedor personalizado. Observe que o Serviço Windows do SQL Server Agent não tem suporte em nenhuma edição do SQL Server Express. Portanto, esse monitoramento não se aplica aos casos do SQL Server Express.

Causas

Um agente de mesclagem pode falhar devido a uma das seguintes causas:

Resoluções

Para resolver este problema de erro de agente, verifique se:

Adicional

Consulte as tabelas msmerge_agents e msmerge_history no banco de dados de distribuição para obter mais informações sobre a falha do agente. A tabela Msrepl_errors também contém informações sobre as falhas do agente.

Externo

Problema de heap de desktop

http://support.microsoft.com/kb/949296

Agente de Mesclagem de Replicação

http://msdn.microsoft.com/library/ms147839.aspx

Parâmetros Substituíveis

Nome

Descrição

Valor Padrão

Prioridade do Alerta

Define a Prioridade do Alerta.

Normal

Severidade do Alerta

Define a Severidade do Alerta.

Erro

Habilitado

Habilita ou desabilita o fluxo de trabalho.

Sim

Duração Estimada do Trabalho

Limite que está sendo usado para verificar a conformidade do plano de trabalho

15

Gera Alertas

Define se o fluxo de trabalho gera ou não um Alerta.

Sim

Intervalo (segundos)

O intervalo de tempo recorrente em segundos no qual executar o fluxo de trabalho.

300

Exibir Trabalhos com Estado Desconhecido

Incluir trabalhos com estado desconhecido na saída do monitoramento e no contexto de alerta. Afetará a integridade.

Não

Tempo de Sincronização

Tempo de Sincronização

 

Tempo limite (segundos)

Especifica a quantidade de tempo que o fluxo de trabalho tem permissão para executar antes de ser fechado e marcado como com falha.

200

Tempo limite da conexão de banco de dados (segundos)

O fluxo de trabalho falhará e registrará um evento, se ele não conseguir acessar o banco de dados durante o período especificado.

15

Element properties:

TargetMicrosoft.SQLServer.Replication.Windows.Subscription
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.Replication.Windows.MonitorType.ReplicationAgentState
RemotableTrue
AccessibilityPublic
Alert Message
Replicação do MSSQL no Windows: erro no agente de Mesclagem da Assinatura.
{0}
RunAsMicrosoft.SQLServer.Core.RunAs.Monitoring

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.Replication.Windows.Monitor.SubscriptionMergeAgentState" Accessibility="Public" Enabled="true" Target="SQLReplWD!Microsoft.SQLServer.Replication.Windows.Subscription" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Replication.Windows.MonitorType.ReplicationAgentState" ConfirmDelivery="false" RunAs="SqlCoreLib!Microsoft.SQLServer.Core.RunAs.Monitoring">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Replication.Windows.Monitor.SubscriptionMergeAgentState.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>
<MachineName>$Target/Host/Host/Property[Type='SqlCoreLib!Microsoft.SQLServer.Core.DBEngine']/MachineName$</MachineName>
<InstanceName>$Target/Host/Host/Property[Type='SqlCoreLib!Microsoft.SQLServer.Core.DBEngine']/InstanceName$</InstanceName>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<ConnectionString>$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Core.GenericSubscription']/Distributor$</ConnectionString>
<MonitoringType>$Target/Host/Host/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/MonitoringType$</MonitoringType>
<XPathName>Merge$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Core.GenericSubscription']/Distributor$$Target/Host/Property[Type='MSRL!Microsoft.SQLServer.Replication.Core.GenericSubscriber']/ConnectionString$$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Core.GenericSubscription']/SubscriptionName$</XPathName>
<ShowJobsWithUnknownState>false</ShowJobsWithUnknownState>
<EstimatedJobDuration>15</EstimatedJobDuration>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>200</TimeoutSeconds>
<CheckMachineAndInstanceName>false</CheckMachineAndInstanceName>
</Configuration>
</UnitMonitor>