nathalem
Goto Top

Programm reagiert nicht - per Powershell neu starten?

Hallo liebe Administratoren,

wir haben auf verschiedenen Windows Servern Anwendungen laufen die, die Gewohnheit haben sich ab und zu aufzuhängen.
Bedeutet: Ich höre das etwas nicht funktioniert, schalte mich auf den Betreffenden Server und finde die Betreffende Anwendung hinter einem Windows Fehlerfenster vor.
Ich wollte nun fragen ob es eine Möglichkeit gibt (möglichst über Powershell) ein Script zu schreiben das über eine Schleife prüft ob eine Anwendung noch vollständig läuft (eine Anwendung die sich aufgehängt hat wird ja im Taskmanager immernoch angezeigt) und diese im Fehlerfall komplett schließt und neu öffnet.
Unter Linux gibt es meine ich einen Begriff für so etwas aber ich komme nicht ganz darauf.

Content-Key: 265164

Url: https://administrator.de/contentid/265164

Printed on: April 23, 2024 at 12:04 o'clock

Member: colinardo
Solution colinardo Mar 04, 2015 updated at 18:46:47 (UTC)
Goto Top
Hallo Nathalem,
z.B. hiermit ...
# Pfad zur Anwendung die überwacht werden soll
$appPath = "C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE"  
# Wartezeit zwischen den Überprüfungen (s)
$wait = 10

while ($true){
    # Prozessreferenz holen
    $proc = (Get-Process ([System.IO.Path]::GetFileNameWithoutExtension($appPath)) -EA SilentlyContinue)
    # Wenn Prozess existiert und nicht reagiert ...
    if ($proc -ne $null -and !$proc.Responding){
            write-host "Anwendung reagiert nicht, versuche einen Neustart" -ForegroundColor Red  
            # kille Prozess
            Stop-Process $proc -Force
            # starte Prozess neu
            Start-Process $appPath
    }
    write-host "Sleeping $wait seconds..."  
    sleep $wait
}
Kannst du ganz einfach testen indem du z.B. in Excel ein Makro ala
Sub hang_excel()
    While true
    Wend
End Sub
startest während dass Powershell-Script läuft. Excel sollte dann neu gestartet werden während es in der Endlosschleife hängt.

Grüße Uwe
Member: Nathalem
Nathalem Mar 04, 2015 at 18:22:30 (UTC)
Goto Top
funktionier super, danke.