透過裝置傳送失敗警示規則

Microsoft.SystemCenter.Notification.FailedToSendThroughDevice.Alert (Rule)

每當通知子系統發現無法透過特定裝置/伺服器傳送通知時,此規則會建立警示

Knowledge Base article:

摘要

通知子系統無法透過選定的裝置傳送通知訊息。如有設定另一個裝置,將透過該替代裝置傳送通知。

原因

通知子系統無法透過通訊協定傳送通知訊息的原因不一。有可能是通訊問題、裝置的設定問題、或是裝置可能未正常運作所致。

解決方式

通知子系統無法透過指派裝置依通訊協定傳送通知訊息。警示描述中會列出傳送失敗的裝置/伺服器。請嘗試執行以下步驟來解決問題:

1. 以 ruleID 判別使用 Power Shell commandlet Get 通知的訂閱。確認收件者所使用的裝置以及該訂閱皆已互相設定正確。

2. 確定管理伺服器能夠與裝置/伺服器連絡,且雙方無通訊問題。

3. 確認通知動作帳戶具備適當權限,可連線到裝置/伺服器。

4. 檢查裝置/伺服器,確定其如預期般與通知模組獨立運作。

Element properties:

TargetMicrosoft.SystemCenter.AlertNotificationSubscriptionServer
CategoryAlert
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityHigh
RemotableTrue
Alert Message
使用伺服器/裝置傳送通知失敗
通知子系統無法使用裝置/伺服器 '{0}' 透過 '{1}' 通訊協定將通知傳送到 '{2}'。{3}: {4}. 規則識別碼: {5}
Event LogOperations Manager

Member Modules:

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

Source Code:

<Rule ID="Microsoft.SystemCenter.Notification.FailedToSendThroughDevice.Alert" Enabled="true" Target="Microsoft.SystemCenter.AlertNotificationSubscriptionServer" ConfirmDelivery="false">
<Category>Alert</Category>
<DataSources>
<DataSource ID="EventDS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>.</ComputerName>
<LogName>Operations Manager</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>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>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>31503</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>2</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SystemCenter.Notification.FailedToSendThroughDevice.Alert.Message"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/Params/Param[6]$</AlertParameter1>
<AlertParameter2>$Data/Params/Param[5]$</AlertParameter2>
<AlertParameter3>$Data/Params/Param[7]$</AlertParameter3>
<AlertParameter4>$Data/Params/Param[8]$</AlertParameter4>
<AlertParameter5>$Data/Params/Param[9]$</AlertParameter5>
<AlertParameter6>$Data/Params/Param[2]$</AlertParameter6>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/Params/Param[6]$</SuppressionValue>
<SuppressionValue>$Data/Params/Param[5]$</SuppressionValue>
<SuppressionValue>$Data/Params/Param[8]$</SuppressionValue>
<SuppressionValue>$Data/Params/Param[9]$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>