複寫快照集代理程式狀態

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

此監視器會針對發行集,檢查複寫快照集代理程式服務的狀態。

Knowledge Base article:

摘要

此監視器會針對發行集,檢查複寫快照代理程式服務的狀態。快照集代理程式會準備快照集檔案 (其中包含所發行之資料表和資料庫物件的結構描述和資料)、將檔案儲存在發行者的快照集資料夾中,並將追蹤資訊記錄在散發者上的散發資料庫中。

原因

快照集代理程式可能會因為下列任何原因而失敗:

解決方式

若要解決這個代理程式錯誤問題,請確定:

額外的

您可以在散發資料庫上查詢 mssnapshot_agents 和 mssnapshot_history 資料表,以取得代理程式失敗的詳細資訊。Msrepl_errors 資料表也有包含任何代理程式失敗的相關資訊。

外部

http://technet.microsoft.com/library/ms146939.aspx

可覆寫的參數

名稱

描述

預設值

警示優先順序

定義警示優先順序。

標準

警示嚴重性

定義警示嚴重性。

錯誤

已啟用

啟用或停用該工作流程。

估計的作業持續時間

用於檢查作業排程相容性的臨界值

15

產生警示

定義工作流程是否要產生警示。

間隔 (秒)

每次重複執行工作流程之間的時間間隔 (秒)。

300

顯示具未知狀態的作業

將狀態未知的作業加入監視器輸出與警示內容中。這會影響健全狀況。

同步處理時間

同步處理時間

 

逾時 (秒)

指定工作流程失敗多少次後關閉並標示為失敗。

200

資料庫連線的逾時 (秒)

若工作流程無法在指定的期限之內存取資料庫,將會失敗並登錄一則事件。

15

Element properties:

TargetMicrosoft.SQLServer.Replication.Windows.Publication
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
Windows 複寫上 MSSQL: 複寫快照集代理程式出現錯誤。
{0}
RunAsMicrosoft.SQLServer.Core.RunAs.Monitoring

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.Replication.Windows.Monitor.PublicationSnapshotAgentState" Accessibility="Public" Enabled="true" Target="SQLReplWD!Microsoft.SQLServer.Replication.Windows.Publication" 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.PublicationSnapshotAgentState.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>
<NetbiosComputerName>$Target/Host/Host/Property[Type='SqlCoreLib!Microsoft.SQLServer.Core.DBEngine']/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Host/Host/Property[Type='SqlCoreLib!Microsoft.SQLServer.Core.DBEngine']/InstanceName$</InstanceName>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<ConnectionString>$Target/Host/Property[Type='MSRL!Microsoft.SQLServer.Replication.Core.GenericPublisher']/Distributor$</ConnectionString>
<MonitoringType>$Target/Host/Host/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/MonitoringType$</MonitoringType>
<XPathName>Snapshot$Target/Host/Property[Type='MSRL!Microsoft.SQLServer.Replication.Core.GenericPublisher']/Distributor$$Target/Host/Property[Type='MSRL!Microsoft.SQLServer.Replication.Core.GenericPublisher']/DistributorDatabaseName$$Target/Host/Property[Type='MSRL!Microsoft.SQLServer.Replication.Core.GenericPublisher']/ConnectionString$$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Core.GenericPublication']/PublicationName$</XPathName>
<ShowJobsWithUnknownState>false</ShowJobsWithUnknownState>
<EstimatedJobDuration>15</EstimatedJobDuration>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>200</TimeoutSeconds>
<CheckMachineAndInstanceName>false</CheckMachineAndInstanceName>
</Configuration>
</UnitMonitor>