Microsoft.Windows.Client.2000.OperatingSystem.ServiceTerminatedUnexpextedly.Alert.MissionCritical (Rule)

Knowledge Base article:

摘要

当 Windows® 服务意外终止时,此规则生成警报。除服务终止事件之外,通常会创建 Windows 错误报告事件(来源:DrWatson;ID:4097),并且 Operations Manager 将收集该事件。当尝试解决服务终止警报时,此额外事件可能会有所帮助。

原因

当服务意外终止应用程序时,Dr. Watson 检测到该应用程序生成了一般性保护错误 (GPF)。当应用程序尝试读取或写入到它没有权限访问的内存位置时将出现 GPF。这通常会导致程序终止和未保存的数据丢失。

解决方法

当服务意外终止时,您可以选择下列选项之一来解决问题:

如果服务意外终止的频率非常频繁,并且相关的支持信息不可用,则您应该联系软件供应商以获得帮助。

其他

示例事件:

无论何时“系统事件日志”中发生以下任一事件,此规则均将生成警报:

由于 %1 服务启动失败,将恢复为最后一次正确的配置。

%1 服务终止,并出现以下错误:%n%2

%1 服务终止,并出现特定于服务的错误 %2。

%1 服务意外终止。此情况已经发生 %2 次。将在 %3 毫秒内执行以下修正操作: %5.

服务控制管理器在 %3 服务意外终止后尝试执行修正操作 (%2),但是此操作失败,并出现以下错误:%n%4

%1 服务意外终止。此情况已经发生 %2 次。

Element properties:

TargetMicrosoft.Windows.Client.2000.OperatingSystem
CategoryEventCollection
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
服务意外终止
{0}
Event LogSystem

Member Modules:

ID Module Type TypeId RunAs 
EventDS DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.Windows.Client.2000.OperatingSystem.ServiceTerminatedUnexpextedly.Alert.MissionCritical" Enabled="false" Target="Microsoft.Windows.Client.2000.OperatingSystem">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="EventDS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>System</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>Service Control Manager</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<Or>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>7021</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>7024</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>7031</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>7032</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</Or>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>7034</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.Client.2000.OperatingSystem.ServiceTerminatedUnexpextedly.Alert.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>