Generuje alerty dotyczące skryptów powłoki Power Shell zakończonych niepowodzeniem.
Wykonanie programu PowerShell nie zakończyło się pomyślnie.
Może to mieć wpływ na pewne aspekty monitorowania lub odnajdywania.
Możliwe przyczyny:
Skrypt jest niepoprawnie napisany.
Skrypt programu PowerShell ma niepoprawną konfigurację (brak odwołania do elementu danych, niepoprawnie skonfigurowany limit czasu).
Niewystarczające uprawnienia dostępu do zasobu używanego w skrypcie (rejestr, system plików, usługa itp.).
Zasób (rejestr, system plików, usługa itp.) działa powoli, jest w trybie offline lub jest uszkodzony.
Komputer ma za mało zasobów (np. pamięci), aby uruchomić plik wykonywalny.
Opis oraz kontekst alertu zawierają informacje wskazujące, której zasady lub którego monitora dotyczy awaria. Następujące łącze spowoduje wyświetlenie wszystkich zdarzeń wskazujących niepowodzenie uruchomienia pliku wykonywalnego:
Wyświetl zdarzenia programu PowerShell
Po przejrzeniu błędu w kontekście sprawdź następujące elementy:
Czy skrypt programu PowerShell jest wykonywany bez błędów na komputerze.
Czy w skrypcie programu PowerShell istnieją odwołania do elementów danych i czy skonfigurowano je poprawnie.
Czy konto akcji ma dostęp do zasobów używanych w skrypcie programu PowerShell.
Czy komputer nie jest nadmiernie wykorzystany.
Zapisz plik skryptu programu PowerShell i uruchom go w programie PowerShell.exe.
Sprawdź w Menedżerze zadań, czy jest wystarczająca ilość wolnej pamięci.
Sprawdź w Menedżerze zadań, czy jakieś procesy zajmują cały procesor.
Inny błąd może być spowodowany błędem w konfiguracji przepływu pracy wykonującego ten skrypt. Konfiguracja przystawek lub parametrów albo wartość sekund limitu czasu może być niepoprawna.
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>