可用性データベースの中断状態

Microsoft.SQLServer.Linux.Monitor.DatabaseReplica.SuspendState (UnitMonitor)

このモニターは、データベース レプリカのデータ移動の状態を調べます。モニターが異常となるのは、データ移動が中断されている場合です。それ以外の場合は、モニターは正常となります。

Knowledge Base article:

概要

このモニターは、データベース レプリカのデータ移動の状態を調べます。モニターが異常となるのは、データ移動が中断されている場合です。それ以外の場合は、モニターは正常となります。

原因

データベース管理者またはシステムが、この可用性データベースでデータ同期を中断しました。

解決方法

データ移動を再開します。問題が解決されない場合は、可用性グループのイベント ログを調べて、データ移動がシステムによって中断された理由を特定します。

上書き可能なパラメーター

名前

説明

既定値

有効

ワークフローを有効または無効にします。

はい

アラートを生成する

ワークフローがアラートを生成するかどうかを定義します。

いいえ

間隔 (秒)

ワークフローを実行する定期的な実行間隔 (秒)。

900

同期時刻

24 時間形式で指定した同期時刻。省略可能です。

 

タイムアウト (秒)

ワークフローが終了して失敗とマークされるまでの、ワークフローの許容実行時間を指定します。

300

データベース接続のタイムアウト (秒)

指定された期間中にデータベースにアクセスできない場合、ワークフローは失敗し、イベントが登録されます。

15

Element properties:

TargetMicrosoft.SQLServer.Linux.DatabaseReplica
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.Linux.MonitorType.AlwaysOnSystemPolicy
RemotableTrue
AccessibilityPublic
Alert MessageMicrosoft.SQLServer.Linux.Monitor.DatabaseReplica.SuspendState.AlertMessage
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.Linux.Monitor.DatabaseReplica.SuspendState" Accessibility="Public" Enabled="true" Target="SqlDiscL!Microsoft.SQLServer.Linux.DatabaseReplica" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Linux.MonitorType.AlwaysOnSystemPolicy" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Linux.Monitor.DatabaseReplica.SuspendState.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DatabaseReplica"]/AvailabilityGroupName$</AlertParameter3>
<AlertParameter4>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DatabaseReplica"]/AvailabilityDatabaseName$</AlertParameter4>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="HealthState" HealthState="Success"/>
<OperationalState ID="Critical" MonitorTypeStateID="ErrorState" 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>
<ConnectionString>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<PolicyName>AlwaysOnDbrSuspendStatePolicy</PolicyName>
<BagKey>3-$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DatabaseReplica"]/AvailabilityDatabaseName$</BagKey>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>