Avertit lorsque des scripts PowerShell échouent.
L'exécution de PowerShell a échoué.
Cela peut affecter une partie de l'analyse ou de la détection.
Les raisons de ce problème peuvent être les suivantes :
Le script n'est pas écrit correctement.
La configuration du script PowerShell est incorrecte (référence DataItem absente, délai d'attente incorrectement configuré).
Il manque les autorisations nécessaires pour accéder à une ressource utilisée par le script (Registre, système de fichiers, service, etc.).
La ressource (Registre, système de fichiers, service, etc.) est lente, hors ligne ou endommagée.
L'ordinateur ne dispose pas de ressources suffisantes (comme la mémoire) pour l'exécution de l'exécutable.
La description et le contexte de l'alerte contiennent des informations indiquant la règle ou l'analyse ayant échoué. Le lien suivant affichera tous les événements indiquant l'échec de l'exécution du programme exécutable :
Afficher les événements PowerShell
Après avoir examiné l'erreur dans son contexte, vérifiez :
que le script PowerShell s'exécute sur l'ordinateur sans erreur ;
que le script PowerShell est configuré correctement et que les références Data Item sont valides et présentes ;
que le compte d'action dispose des droits d'accès suffisants aux ressources utilisées par le script PowerShell ;
que l'ordinateur n'est pas surchargé.
Enregistrez le script PowerShell dans un fichier et exécutez-le via PowerShell.exe.
Ouvrez le Gestionnaire des tâches pour vérifier si la mémoire libre est suffisante.
Ouvrez le Gestionnaire des tâches pour vérifier si des processus monopolisent l'unité centrale.
Une autre erreur peut être causée par la mauvaise configuration du flux de travail exécutant ce script. Il se peut que les composants logiciels enfichables, les paramètres ou le délai d'attente configurés soient incorrects.
Target | Microsoft.SystemCenter.HealthService | ||
Category | Alert | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Operations Manager |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SystemCenter.PowerShellModule.AlertOnFailedResponses" 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>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">22402</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">22406</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">22407</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">22409</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SystemCenter.PowerShellModule.AlertOnFailedResponses.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventNumber$</SuppressionValue>
<SuppressionValue>$Data/Params/Param[2]$</SuppressionValue>
<SuppressionValue>$Data/Params/Param[6]$</SuppressionValue>
<SuppressionValue>$Data/Params/Param[8]$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>