Wiele uszkodzonych lub nieczytelnych zdarzeń systemu Windows

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

Ten monitor sprawdza, czy moduł dziennika zdarzeń systemu Windows odczytuje wiele uszkodzonych zdarzeń z któregoś dziennika. Jeśli w ustalonym czasie napotkanych zostanie zbyt wiele uszkodzonych lub nieczytelnych zdarzeń, stan monitora zacznie wskazywać złą kondycję.

Knowledge Base article:

Podsumowanie

Ten monitor i alert wskazują, że w monitorowanym dzienniku zdarzeń wystąpiło wiele uszkodzonych i nieczytelnych zdarzeń.

Usługa System Center Management Health podjęła próbę odczytu zdarzenia, jednak duża liczba kolejnych zdarzeń w dzienniku zdarzeń była nieczytelna. Domyślna konfiguracja tego monitora powoduje generowanie stanu ostrzeżenia i alertu w momencie napotkania 21 kolejnych zdarzeń, których usługa System Center Management Health nie mogła przetworzyć w czasie 5 minut.

Jeśli w tym czasie lub po jego upływie usługa System Center Management Health mogła przetworzyć zdarzenie, monitor przechodzi do stanu prawidłowego, a pierwotny alert z ostrzeżeniem zostaje automatycznie rozwiązany.

Przyczyny

Ten problem może mieć wiele przyczyn, na przykład:

Rozwiązania

W celu ustalenia, czy występuje problem z przetwarzanym dziennikiem, można wykonać następujące kroki:

1. Zapisz nazwę zasady lub monitora z kontekstu alertu lub monitora. Jest to tekst w kontekście następujący po nazwie przepływu pracy.

2. Wyszukaj tę nazwę w konsoli i otwórz właściwości zasady lub monitora.

3. W oknie właściwości monitora lub zasady sprawdź karty zaczynające się etykietą Dziennik zdarzeń (na przykład „Dziennik zdarzeń (zdarzenie nieprawidłowe)”.

4. Po zapisaniu nazwy dziennika zdarzeń, którego monitorowanie skonfigurowano w ramach danej zasady lub monitora znajdź powiązaną kartę o nazwie zawierającej tekst „wyrażenie zdarzenia” (na przykład „Proste wyrażenie zdarzenia” lub „Wyrażenie zdarzenia powtarzanego”).

5. Zapisz kryteria widoczne w tym miejscu. Na podstawie tych kryteriów można odfiltrować dziennik zdarzeń komputerów docelowych w celu znalezienia uszkodzonego zdarzenia.

6. Po określeniu dziennika zdarzeń i wyrażenia (na przykład Identyfikator zdarzenia równa się 14384 AND Źródło zdarzenia równa się Usługa kondycji) otwórz podgląd zdarzeń dla miejsca pochodzenia zdarzenia.

7. Kliknij dziennik zdarzeń zidentyfikowany w kroku 3.

8. Ustaw w dzienniku zdarzeń filtr, aby wyszukać zdarzenie, dla którego w kroku 5 skonfigurowano zasadę lub monitor. Tę czynność można wykonać za pomocą podglądu zdarzeń, klikając prawym przyciskiem myszy nazwę dziennika zdarzeń i wybierając z menu kontekstowego pozycję Widok, a następnie Filtruj W tym miejscu można filtrować według „Źródła zdarzeń” i „Identyfikatora zdarzenia”, podobnie jak przypadku wyrażenia w kroku 5.

9. Jeśli w widoku wyświetlą się zdarzenia, otwórz je za pomocą podglądu zdarzeń.

a. Jeśli możesz pomyślnie otworzyć zdarzenie, zapisz dziennik zdarzeń (menu Akcja, pozycja Zapisz plik dziennika jako).

b. Skontaktuj się z pomocą techniczną i podaj nazwę monitora oraz jego aktualny stan, a także wymień wykonane czynności wyszczególnione w bazie wiedzy i w dzienniku zdarzeń, który zapisano do celów analizy offline.

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
Wiele uszkodzonych lub nieczytelnych zdarzeń systemu Windows
{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/Context/DataItem/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>