Монитор синхронизации данных синхронных реплик

Microsoft.SQLServer.2014.AlwaysOn.AvailabilityReplicasSynchronizationState (UnitMonitor)

Синхронизация данных синхронных реплик

Knowledge Base article:

Сводка

Этот монитор выполняет сведение информации о состоянии синхронизации данных всех реплик доступности и проверяет наличие реплик доступности, состояние синхронизации которых отличается от ожидаемого. Монитор находится в неисправном состоянии, если любая асинхронная реплика не находится в состоянии SYNCHRONIZING и любая синхронная реплика не находится в состоянии SYNCHRONIZED. В противном случае состояние монитора исправно.

Причины

В этой группе доступности не синхронизирована по меньшей мере одна реплика доступности. Состояние синхронизации реплики может быть либо SYNCHONIZING, либо NOT SYNCHRONIZING.

Решения

Найдите реплику доступности с неверным состоянием синхронизации с помощью монитора состояний и устраните проблему.

Переопределяемые параметры

Название

Описание

Значение по умолчанию

Включено

Включает или отключает рабочий процесс.

Да

Создает предупреждения

Определяет, создает ли рабочий процесс предупреждения.

Нет

Интервал (в секундах)

Повторяющийся интервал времени в секундах, по истечении которого запускается рабочий процесс.

900

Время ожидания (в секундах)

Определяет время, в течение которого возможно выполнение рабочего процесса перед закрытием и пометкой как сбойный.

300

Element properties:

TargetMicrosoft.SQLServer.2014.AlwaysOn.AvailabilityGroupHealth
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveFalse
Monitor TypeMicrosoft.SQLServer.2014.AlwaysOn.SystemPolicyScriptMonitorType
RemotableTrue
AccessibilityPublic
RunAsMicrosoft.SQLServer.2014.AlwaysOn.MonitoringAccount

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2014.AlwaysOn.AvailabilityReplicasSynchronizationState" RunAs="Microsoft.SQLServer.2014.AlwaysOn.MonitoringAccount" TypeID="Microsoft.SQLServer.2014.AlwaysOn.SystemPolicyScriptMonitorType" Accessibility="Public" Enabled="true" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Target="AlwaysOnDisc!Microsoft.SQLServer.2014.AlwaysOn.AvailabilityGroupHealth" Priority="Normal">
<Category>AvailabilityHealth</Category>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="HealthState" HealthState="Success"/>
<OperationalState ID="Critical" MonitorTypeStateID="ErrorState" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<Interval>900</Interval>
<TimeoutSeconds>300</TimeoutSeconds>
<PolicyName>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2014.AlwaysOn.AvailabilityGroupHealth"]/AvailabilityGroupName$-AlwaysOnAgSynchronousReplicasDataSynchronizationHealthPolicy</PolicyName>
<InstanceName>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2014.AlwaysOn.AvailabilityGroupHealth"]/InstanceName$</InstanceName>
</Configuration>
</UnitMonitor>