Service Pack のコンプライアンス

Microsoft.SQLServer.2016.DBEngine.Configuration.ServicePackLevel (UnitMonitor)

データベース エンジンの Service Pack レベルを準拠設定に従って監視します

Knowledge Base article:

概要

このモニターは、この SQL インスタンスの Service Pack のバージョンを確認します。必要な設定と一致していない場合に、警告またはエラー アラートが生成されます。

既定では、モニターは、サービス パックのレベルが 0 でないときに通知を生成するよう設定されています。これは、必要に応じてオーバーライドを使用して変更できます。

原因

異常な状態になるのは、Service Pack のレベルが必要なレベルにない (既定値は 0) ためです。

解決方法

この問題は、最新の Service Pack を SQL Server に適用することで解決できる場合があります。

また、環境内の現在の設定が有効な場合は、次の方法を取ることもできます。

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

名前

説明

既定値

アラートの優先度

アラートの優先順位を定義します。

アラートの重要度

アラートの重大度を定義します。

MatchMonitorHealth

有効

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

はい

アラートを生成する

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

はい

間隔 (秒)

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

43200

SQL Server 2016 の最小 Service Pack レベル

企業ポリシーに基づく最小 Service Pack レベル。既定では、0 と等しい (整数)。

0

Element properties:

TargetMicrosoft.SQLServer.2016.DBEngine
Parent MonitorSystem.Health.ConfigurationState
CategoryConfigurationHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2016.ServicePackVersion
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL 2016: Service Pack 準拠
コンピューター {0} 上の SQL インスタンス {1} の Service Pack レベルが最新ではありません
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2016.DBEngine.Configuration.ServicePackLevel" Accessibility="Public" Enabled="true" Target="SQL2016Core!Microsoft.SQLServer.2016.DBEngine" ParentMonitorID="SystemHealth!System.Health.ConfigurationState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2016.ServicePackVersion" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.DBEngine.Configuration.ServicePackLevel.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="SPCompliant" MonitorTypeStateID="ValueGood" HealthState="Success"/>
<OperationalState ID="SPNotCompliant" MonitorTypeStateID="ValueBad" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<SQLServiceName>$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.DBEngine"]/ServiceName$</SQLServiceName>
<IntervalSeconds>43200</IntervalSeconds>
<GoodValue>1</GoodValue>
</Configuration>
</UnitMonitor>