Монитор процента подписок с истекшим сроком действия
Измеряет процент подписок с истекшим сроком действия.
Срок действия подписки завершается, если ее синхронизация не выполняется в течение указанного срока хранения.
Если при выполнении транзакционной репликации подписка не синхронизируется в течение заданного срока хранения, срок действия подписки завершается, и подписка удаляется заданием очистки, выполняемым на издателе.
При репликации слиянием для определения срока хранения используются параметры @retention и @retention_period_unit функции sp_addmergepublication. Срок действия подписки истекает только в том случае, если подписка не синхронизируется в течение срока хранения, и если в данные в разделе подписчика были внесены изменения.
При транзакционной репликации подписка должна быть повторно создана и синхронизирована. Если истекает срок принудительной подписки, она полностью удаляется, однако это не относится к подпискам по запросу. Подписки по запросу должны удаляться на подписчике.
По истечении срока действия подписки со слиянием метаданные подписки удаляются. Подписка может быть повторно инициализирована для удвоения срока хранения с момента последней успешной синхронизации. Как только достигается удвоенное значение срока хранения, она полностью удаляется, после чего требуется повторно создать подписку и синхронизировать ее. Принудительная подписка автоматически удаляется заданием очистки истекших подписок. Записки по запросу не удаляются автоматически, их следует удалять на подписчике.
Чтобы увеличить длительность хранения между операциями синхронизации подписчика, можно увеличить значение срока хранения. Имейте в виду, что увеличение этого значения приводит к росту объема данных репликации, что может негативно сказаться на производительности репликации.
Более подробные сведения об управлении истечением срока действия подписки см. здесь:
http://technet.microsoft.com/library/ms151188.aspx
Имя | Описание | Значение по умолчанию |
Включено | Включает или отключает рабочий процесс | Да |
Порог ошибок | Порог ошибок | 10 |
Создает предупреждения | Определяет, создает ли рабочий процесс предупреждение | Да |
Интервал (секунды) | Повторяющийся интервал времени в секундах, по истечении которого запускается рабочий процесс. | 300 |
Время ожидания (секунды) | Время ожидания (секунды) | 300 |
Время синхронизации | Время синхронизации |
|
Порог предупреждений | Порог предупреждений | 0 |
Target | Microsoft.SQLServer.2014.Replication.Distributor | ||
Parent Monitor | System.Health.ConfigurationState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2014.Replication.MonitorType.DistributorPercentOfDeactivatedSubscriptions | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Microsoft.SQLServer.Replication.Monitoring.RunAs.Monitor |
<UnitMonitor ID="Microsoft.SQLServer.2014.Replication.Monitor.PercentOfExpiredSubscriptions" Accessibility="Public" Enabled="true" Target="MS2RD!Microsoft.SQLServer.2014.Replication.Distributor" ParentMonitorID="Health!System.Health.ConfigurationState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2014.Replication.MonitorType.DistributorPercentOfDeactivatedSubscriptions" ConfirmDelivery="false" RunAs="MSRL!Microsoft.SQLServer.Replication.Monitoring.RunAs.Monitor">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.Replication.Monitor.DistributorPercentOfExpiredSubscriptions.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Library.GenericDistributor']/InstanceName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Library.GenericDistributor']/ConnectionString$</AlertParameter2>
<AlertParameter3>$Data/Context/Property[@Name='DistributorPercentOfDeactivatedSubscriptions']$</AlertParameter3>
<AlertParameter4>$Data/Context/Property[@Name='Message']$</AlertParameter4>
</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>300</SqlTimeout>
<ConnectionString>$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Library.GenericDistributor']/ConnectionString$</ConnectionString>
<MeasuredStateId>0</MeasuredStateId>
<WarningThreshold>0</WarningThreshold>
<ErrorThreshold>10</ErrorThreshold>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>