PowerShell スクリプトの破棄のアラート

Microsoft.SystemCenter.PowerShellModule.AlertOnDroppedResponses (Rule)

PowerShell スクリプトが破棄された場合にアラートを生成します。

Knowledge Base article:

概要

利用率が高すぎるため、System Center Management ヘルス サービスが PowerShell スクリプトをルールまたはモニターの一部として実行できませんでした。

これは、監視または検出に影響を与える可能性があります。

原因

これは次のような事項が原因で発生します。

解決方法

アラートの説明およびコンテキストには、失敗したルールまたはモニターを示す情報が含まれます。ただし、別のルールまたはモニターも失敗している可能性があります。次のリンクから、実行可能ファイル実行の失敗を示すすべてのイベントを表示できます。

PowerShell イベントの表示

コンテキストのエラーを確認した後、PowerShell スクリプトの頻度を減らすことを検討します。

コンピューターが過負荷になっていないことを確認してください。

スケジュールしている PowerShell スクリプトが多すぎることが、この問題の原因である場合もあります。大量のイベントや正しく構成されていないタイマーによって、この問題が発生する可能性があります。いずれの場合も、ルールの構成を調べて、PowerShell スクリプトの実行回数が多すぎる原因を特定する必要があります。また、通常はバックダウン (間隔を増やす) が必要になります。

Element properties:

TargetMicrosoft.SystemCenter.HealthService
CategoryAlert
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
PowerShell スクリプトが破棄されました
{0}
Event LogOperations Manager

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.EventProvider Default
Consolidator ConditionDetection System.ConsolidatorCondition Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SystemCenter.PowerShellModule.AlertOnDroppedResponses" Enabled="true" Target="SCLibrary!Microsoft.SystemCenter.HealthService" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Operations Manager</LogName>
<Expression>
<And>
<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>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/ManagementGroup/Name$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">22411</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<ConditionDetection ID="Consolidator" TypeID="System!System.ConsolidatorCondition">
<Consolidator>
<ConsolidationProperties>
<PropertyXPathQuery>Params/Param[1]</PropertyXPathQuery>
</ConsolidationProperties>
<TimeControl>
<WithinTimeSchedule>
<Interval>300</Interval>
</WithinTimeSchedule>
</TimeControl>
<CountingCondition>
<Count>10</Count>
<CountMode>OnNewItemTestOutputRestart_OnTimerSlideByOne</CountMode>
</CountingCondition>
</Consolidator>
</ConditionDetection>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertName/>
<AlertMessageId>$MPElement[Name="Microsoft.SystemCenter.PowerShellModule.AlertOnDroppedResponses.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/Context/DataItem/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/Context/DataItem/Params/Param[2]$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>