Datenbankintegritätsrichtlinie

Microsoft.SQLServer.Linux.Monitor.DatabaseWarningUserPolicy.DBWarningUserPolicyState (UnitMonitor)

Monitor mit zwei Zuständen mit kritischem Warnzustand; wird insbesondere für die Darstellung des Status von benutzerdefinierten Richtlinien verwendet, die eine Datenbank als Facet und eine der vordefinierten Warnungskategorien als Richtlinienkategorie aufweisen.

Knowledge Base article:

Zusammenfassung

Dieser Monitor überprüft das Auswertungsergebnis der Richtlinie in der SQL Server-Instanz. Der Monitor ist fehlerfrei, wenn die Richtlinie erfolgreich ausgewertet wurde. Andernfalls ist der Monitor fehlerhaft.

Lösungen

Um dieses Problem zu diagnostizieren, wenden Sie sich mit dem Richtliniennamen an den Datenbankadministrator oder den Richtlinienbesitzer. Der Richtlinienbesitzer kann die Ursache der Richtlinienausführungsauswertung bestimmen, die zu einem fehlerhaften Status der Überwachung führte.

Überschreibbare Parameter

Name

Beschreibung

Standardwert

Warnungspriorität

Definiert die Warnungspriorität.

Normal

Warnungsschweregrad

Definiert den Warnungsschweregrad.

Warnung

Aktiviert

Aktiviert oder deaktiviert den Workflow.

Ja

Generiert Warnungen

Definiert, ob der Workflow eine Warnung generiert.

Ja

Intervall (Sekunden)

Gibt das Wiederholungsintervall in Sekunden für die Ausführung des Workflows an.

900

Synchronisierungszeit

Die Synchronisierungszeit, angegeben im 24-Stunden-Format. Dieser Wert kann ausgelassen werden.

 

Timeout (Sekunden)

Gibt die Zeit an, zu der der Workflow ausgeführt werden dann, bevor er geschlossen und als fehlerhaft markiert wird.

300

Timeout für Datenbankverbindung (Sekunden)

Es tritt ein Fehler beim Workflow auf, und ein Ereignis wird registriert, wenn der Workflow nicht innerhalb des angegebenen Zeitraums auf die Datenbank zugreifen kann.

15

Element properties:

TargetMicrosoft.SQLServer.Linux.DatabaseWarningUserPolicy
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.Linux.MonitorType.UserPolicy
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL für Linux: Benutzerdefinierte Richtlinie – Warnung
Beschreibung: Die Auswertung der benutzerdefinierten Richtlinie für die Datenbank "{0}" in der SQL-Instanz "{1}" auf dem Computer "{2}" hat eine Warnung zurückgegeben. Weitere Informationen finden Sie im Abschnitt "Wissensdatenbank".
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.Linux.Monitor.DatabaseWarningUserPolicy.DBWarningUserPolicyState" TypeID="Microsoft.SQLServer.Linux.MonitorType.UserPolicy" Accessibility="Public" Enabled="true" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Target="SqlDiscL!Microsoft.SQLServer.Linux.DatabaseWarningUserPolicy" Priority="Normal">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Linux.Monitor.DatabaseWarningUserPolicy.DBWarningUserPolicyState.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.Database"]/DatabaseName$</AlertParameter3>
</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>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.Policy"]/PolicyName$</PolicyName>
<TargetName>4-$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.Database"]/DatabaseName$</TargetName>
<SqlExecTimeoutSeconds>60</SqlExecTimeoutSeconds>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>