Esse monitoramento verifica se o SQL Server Agent está em execução no Publicador.
Esse monitoramento se conecta ao Publicador de Replicação e verifica se o serviço do SQL Server Agent está em execução. O serviço do SQL Server Agent é instalado automaticamente durante a instalação do SQL Server. O serviço do Windows é usado pela Replicação para iniciar e interromper os Trabalhos do SQL Server Agent de Replicação responsáveis pelo trânsito de dados.
O Serviço do SQL Server Agent pode ter sido manualmente interrompido ou interrompido como resultado de uma falha do agente. Examine o log de Evento do Aplicativo do Windows para encontrar causas prováveis de interrupção inesperada de um serviço de Agente.
Se a propriedade "Modo de Início" do Agente estiver configurada como "Manual", ao invés de "Automático", o serviço do SQL Server Agent não será reinicializado automaticamente após a reinicialização do servidor.
Inicie o serviço do SQL Server Agent em Serviços Windows, no SQL Server Configuration Manager, ou pelo SQL Server Management Studio. Se o "Modo de Início" do agente estiver configurado como "Manual", considere alterar para "Automático".
Iniciar, interromper ou pausar o Serviço do SQL Server Agent http://technet.microsoft.com/library/ms190695.aspx
No Publicador, além do Agente de Leitor de Log, do Agente de Instantâneo e do Agente de Distribuição de push, o Serviço do SQL Server Agent também é responsável pela execução de diversos agentes como os agentes de "limpeza de histórico de Agente: distribuição", "limpeza de Distribuição: distribuição", e "limpeza de assinatura expirada".
Use o seguinte link para visualizar o Log de Erro do SQL Server Agent: http://msdn.microsoft.com/library/ms175488.aspx
Este tópico descreve como configurar o Microsoft SQL Server Agent para reinício automático caso seja interrompido inesperadamente no SQL Server no Windows. https://msdn.microsoft.com/library/ms178130.aspx
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 |
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. | 600 |
Tempo de Sincronização | O tempo de sincronização especificado usando um formato de 24 horas. Pode ser omitido. |
|
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. | 300 |
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 |
Target | Microsoft.SQLServer.Replication.Windows.Publisher | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.Replication.Windows.MonitorType.SqlServiceStatus | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Microsoft.SQLServer.Core.RunAs.Monitoring |
<UnitMonitor ID="Microsoft.SQLServer.Replication.Windows.Monitor.Publisher.SQLServerAgentState" Accessibility="Public" Enabled="true" Target="SQLReplWD!Microsoft.SQLServer.Replication.Windows.Publisher" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Replication.Windows.MonitorType.SqlServiceStatus" ConfirmDelivery="false" RunAs="SqlCoreLib!Microsoft.SQLServer.Core.RunAs.Monitoring">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Replication.Windows.Monitor.Publisher.SQLServerAgentState.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<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>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="Running" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="RunningManualOrUnableToDetectStatus" HealthState="Warning"/>
<OperationalState ID="Error" MonitorTypeStateID="NotRunning" HealthState="Error"/>
</OperationalStates>
<Configuration>
<MachineName>$Target/Host/Property[Type='SqlCoreLib!Microsoft.SQLServer.Core.DBEngine']/MachineName$</MachineName>
<InstanceName>$Target/Host/Property[Type='SqlCoreLib!Microsoft.SQLServer.Core.DBEngine']/InstanceName$</InstanceName>
<ConnectionString>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<MonitoringType>$Target/Host/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/MonitoringType$</MonitoringType>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>600</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>