データベース レプリカ ヘルス ポリシー

Microsoft.SQLServer.2012.AlwaysOn.DatabaseReplicaErrorPolicyStateMonitor (UnitMonitor)

"エラー" 重大状態を持つ 2 状態モニター。データベース レプリカ状態をファセットとして持ち、定義済みのエラー カテゴリの 1 つをポリシー カテゴリとして持つカスタム ユーザー ポリシーの状態を反映するために使用される。

Knowledge Base article:

概要

このモニターは、SQL サーバー インスタンス内のポリシーの検証結果を調べます。モニターが正常状態となるのは、ポリシーの検証が正常に行われた場合です。それ以外の場合は、異常状態となります。

解決方法

この問題を診断するには、データベース管理者またはポリシー所有者に連絡してポリシー名を伝えてください。ポリシー所有者は、モニターが異常となるポリシー実行検証の根本原因を特定できます。

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

名前

説明

既定値

有効

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

はい

アラートの生成

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

いいえ

間隔 (秒)

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

900

ポリシー名

 

$Target/Host/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.DatabaseReplica"]/AvailabilityGroupName$-$Target/Host/Property[Type="System!System.Entity"]/DisplayName$-$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.Policy"]/PolicyName$

タイムアウト (秒)

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

300

Element properties:

TargetMicrosoft.SQLServer.2012.AlwaysOn.DatabaseReplicaErrorUserPolicy
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveFalse
Monitor TypeMicrosoft.SQLServer.2012.AlwaysOn.UserPolicyScriptMonitorType
RemotableTrue
AccessibilityPublic
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2012.AlwaysOn.DatabaseReplicaErrorPolicyStateMonitor" TypeID="Microsoft.SQLServer.2012.AlwaysOn.UserPolicyScriptMonitorType" Accessibility="Public" Enabled="true" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Target="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.DatabaseReplicaErrorUserPolicy" Priority="Normal">
<Category>AvailabilityHealth</Category>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="HealthState" HealthState="Success"/>
<OperationalState ID="Critical" MonitorTypeStateID="ErrorState" HealthState="Error"/>
</OperationalStates>
<Configuration>
<Interval>900</Interval>
<TimeoutSeconds>300</TimeoutSeconds>
<PolicyName>$Target/Host/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.DatabaseReplica"]/AvailabilityGroupName$-$Target/Host/Property[Type="System!System.Entity"]/DisplayName$-$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.Policy"]/PolicyName$</PolicyName>
<InstanceName>$Target/Host/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.DatabaseReplica"]/AvailabilityReplicaServerName$</InstanceName>
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
</Configuration>
</UnitMonitor>