Monitor für Fehler wegen nicht aufrufbaren SQL-Servers im Windows Azure-Paket

WindowsAzurePack.Monitor.InaccessibleSqlServer.SqlServers (UnitMonitor)

Fehler: Auf SQL kann nicht zugegriffen werden.

Knowledge Base article:

Zusammenfassung

Überwacht die Datenbankverbindung zwischen den Webservern des Windows Azure-Pakets und den SQL-Servern. Hierzu wird das Ereignisprotokoll regelmäßig auf Verbindungsverlustereignisse überprüft.

Ursachen

Wenn sich dieser Monitor im Fehlerstatus befindet, ist die SQL-Datenbank nicht auf dem Webserver verfügbar, der das Ereignis in das Ereignisprotokoll geschrieben hat.

Auflösung

Überprüfen Sie den Status der SQL Server-Datenbanken, die von den Windows Azure-Serverwebsites verwendet werden. Stellen Sie sicher, dass das Anwendungspoolkonto für den Verwendungs-Webendpunkt auf dem Webserver mit Zugriff auf den Datenbankserver bereitgestellt ist. Überprüfen Sie, ob das Kennwort für das Anwendungspoolkonto abgelaufen ist.

Konfiguration

Damit dieser Monitor korrekt funktionieren kann, benötigt er die Leseberechtigung für das Ereignisprotokoll.

Option

Definition

Standard

Warnung bei Status

Integritätsstatus für den Monitor, der die Warnung generiert.

Der Monitor befindet sich in einem kritischen Integritätsstatus

Warnungspriorität

Priorität der für diesen Monitor generierten Warnung.

Hoch

Warnungsschweregrad

Schweregrad der für diesen Monitor generierten Warnung.

Kritisch

Warnung automatische Auflösung

Bestimmt, ob die Warnung automatisch aufgelöst werden soll, wenn der Monitor wieder einen fehlerfreien Status aufweist.

Wahr

Aktiviert

Bestimmt, ob der Monitor ausgeführt werden soll.

Wahr

Generiert Warnungen

Bestimmt, ob der Monitor eine Warnung generieren soll, wenn sich der Status in eine Warnung oder einen kritischen Status ändert.

Wahr

Intervall

Dauer zwischen den Ausführungen des Monitors (Angabe in Sekunden).

300

Element properties:

TargetWindowsAzurePack.ResourceProvider.SqlServers
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeWindowsAzurePack.MonitorType.CustomSingleEventLogTimer2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Fehler: Warnung für Fehler wegen eines nicht möglichen SQL Server-Aufrufs im Windows Azure-Paket
Fehler: Auf SQL kann nicht zugegriffen werden. Ereignis 214.
RunAsDefault
CommentWAP Monitor Event for SQL Resource Provider

Source Code:

<UnitMonitor ID="WindowsAzurePack.Monitor.InaccessibleSqlServer.SqlServers" Accessibility="Public" Enabled="true" Target="WindowsAzurePack.ResourceProvider.SqlServers" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="WindowsAzurePack.MonitorType.CustomSingleEventLogTimer2StateMonitorType" ConfirmDelivery="false" Comment="WAP Monitor Event for SQL Resource Provider">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="WindowsAzurePack.Monitor.InaccessibleSqlServer.AlertMessage.SqlServers">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ErrorEventRaised" MonitorTypeStateID="EventRaised" HealthState="Error"/>
<OperationalState ID="TimerEventRaised" MonitorTypeStateID="TimerEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<!-- Computer name for the first event. We will use a variable to get the target computer name. -->
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<!-- Name of the log containing the first event. -->
<LogName>Microsoft-WindowsAzurePack-MgmtSvc-SQLServer/Operational</LogName>
<!-- Expression for the first event -->
<Expression>
<And>
<!-- Expression for the first event number -->
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">214</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<!-- Expression for the first event source -->
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-WindowsAzurePack-MgmtSvc-SQLServer</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
<TimerWaitInSeconds>10800</TimerWaitInSeconds>
</Configuration>
</UnitMonitor>