Viele beschädigte oder unlesbare Windows-Ereignisse

Microsoft.SystemCenter.HealthServiceModules.WindowsEventLog.CorruptOrUnreadableEvents (UnitMonitor)

Mit diesem Monitor wird überprüft, ob das Windows-Ereignisprotokollmodul viele beschädigte Ereignisse aus einem Ereignisprotokoll liest. Wenn er in einem bestimmten Zeitraum auf zu viele beschädigte oder unlesbare Ereignisse trifft, setzt er den Status dieses Monitors auf "fehlerhaft".

Knowledge Base article:

Zusammenfassung

Dieser Warnungs-/Monitorstatus weist darauf hin, dass das überwachte Ereignis viele beschädigte und unlesbare Ereignisse enthielt.

Der Integritätsdienst versuchte, ein Ereignis zu lesen, und eine Anzahl nachfolgender Ereignisse im Ereignisprotokoll waren unlesbar. Die Standardkonfiguration dieses Monitors generiert einen Warnungsstatus und eine Warnung, wenn 21 aufeinander folgende Ereignisse gefunden werden, die der Integritätsdienst innerhalb von fünf Minuten nicht verarbeiten konnte.

Wenn vom Integritätsdienst während oder nach diesem Zeitraum ein Ereignis verarbeitet werden konnte, geht der Monitor in einen grünen Status über, und die ursprüngliche Warnung wird automatisch aufgelöst.

Ursachen

Dies kann durch viele Probleme ausgelöst werden, einschließlich:

Lösungen

Mit den nachfolgenden Schritten können Sie ermitteln, ob in dem verarbeiteten Ereignisprotokoll ein Problem auf unterer Ebene enthalten ist:

1. Notieren Sie den im Warnungs- oder Monitorkontext aufgeführten Namen der Regel oder des Monitors. Dies ist der im Kontext nach "Workflowname" angezeigte Text.

2. Suchen Sie diesen Namen in der Konsole, und zeigen Sie die Eigenschaften für diese Regel bzw. diesen Monitor an.

3. Suchen Sie in den Monitor- oder Regeleigenschaften nach den Registerkarten, deren Namen mit "Ereignisprotokoll" beginnen (z. B. "Ereignisprotokoll (Fehlerhaft-Ereignis)").

4. Suchen Sie nach dem Notieren des Ereignisprotokolls, in dem dieser Monitor oder diese Regel für eine Überwachung konfiguriert ist, nach einer verwandten Registerkarte mit dem Namen "Ereignisausdruck" (z. B. "Ausdruck für einfaches Ereignis" oder "Ausdruck für wiederholtes Ereignis").

5. Notieren Sie die Kriterien hier. Diese Kriterien verwenden Sie zum Filtern des Ereignisprotokolls der Zielcomputer, um nach dem beschädigten Ereignis zu suchen.

6. Öffnen Sie nach Ermittlung des Ereignisprotokolls und des Ausdrucks (z. B. "Ereignis-ID gleich 14384" UND "Ereignisquelle gleich Integritätsdienst") die Ereignisanzeige, aus der dieses Ereignis stammt.

7. Klicken Sie auf das Ereignisprotokoll, für das der Monitor oder die Regel in Schritt 3 konfiguriert wurde.

8. Filtern Sie das Ereignisprotokoll, und suchen Sie nach demselben Ereignis, für das die Regel oder der Monitor in Schritt 5 konfiguriert wurde. Verwenden Sie dazu die Ereignisanzeige, indem Sie mit der rechten Maustaste auf den Namen des Ereignisprotokolls klicken und die Kontextmenüoption "Ansicht" und dann "Filtern" auswählen. Nun können Sie nach "Ereignisquelle" und "Ereignis-ID" ähnlich wie im Ausdruck in Schritt 5 suchen.

9. Wenn in der Ansicht Ereignisse angezeigt werden, öffnen Sie diese in der Ereignisanzeige.

a. Wenn Sie das Ereignis öffnen können, speichern Sie das Ereignisprotokoll (Menü "Aktion", "Protokolldatei speichern unter").

b. Wenden Sie sich an den Support Service, und geben Sie Folgendes an: den Namen des Monitors und seinen aktuellen Status, die Schritte, die Sie auszuführen versucht haben, und das Ereignisprotokoll, das Sie für eine Offlineanalyse gespeichert haben.

Element properties:

TargetMicrosoft.SystemCenter.HealthService
Parent MonitorMicrosoft.SystemCenter.HealthServiceModules.WindowsEventLog.Rollup
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityLow
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.RepeatedEventLogSingleEventLog2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Viele beschädigte oder unlesbare Windows-Ereignisse
{0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.HealthServiceModules.WindowsEventLog.CorruptOrUnreadableEvents" Accessibility="Public" Enabled="true" Target="SCLibrary!Microsoft.SystemCenter.HealthService" ParentMonitorID="Microsoft.SystemCenter.HealthServiceModules.WindowsEventLog.Rollup" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.RepeatedEventLogSingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.HealthServiceModules.WindowsEventLog.CorruptOrUnreadableEvents_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Low</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ManyCorruptEvents" MonitorTypeStateID="RepeatedEventRaised" HealthState="Warning"/>
<OperationalState ID="SuccessfullyReadEvent" MonitorTypeStateID="EventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Operations Manager</LogName>
<Expression>
<Or>
<Expression>
<And>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">26005</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">25005</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Health Service Modules</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<Value Type="String">$Target/ManagementGroup/Name$</Value>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Health Service ESE Store</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">102</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</Or>
</Expression>
<RepeatedComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</RepeatedComputerName>
<RepeatedLogName>Operations Manager</RepeatedLogName>
<RepeatedExpression>
<And>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">26008</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">25008</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">26009</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">25009</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Health Service Modules</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<Value Type="String">$Target/ManagementGroup/Name$</Value>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</RepeatedExpression>
<Consolidator>
<ConsolidationProperties>
<PropertyXPathQuery>Params/Param[1]</PropertyXPathQuery>
</ConsolidationProperties>
<TimeControl>
<WithinTimeSchedule>
<Interval>300</Interval>
</WithinTimeSchedule>
</TimeControl>
<CountingCondition>
<Count>20</Count>
<CountMode>OnNewItemTestOutputRestart_OnTimerSlideByOne</CountMode>
</CountingCondition>
</Consolidator>
</Configuration>
</UnitMonitor>