stefan007
Goto Top

Ping-Script mit Log bei Misserfolg gesucht

Hi,

ich suche ein simples Script (Batch) für einen Dauerping auf eine Ressource. Wichtig ist mir dabei nur, dass er im Falle eines Timeouts (also "Zeitüberschreitung der Anforderung") dieses in eine .txt samt der Uhrzeit und Datum packt, erfolgreiche Pings sollen nicht protokolliert werden. Ist das so überhaupt realisierbar?

Gruß,

Stefan

Content-Key: 587404

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

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

Member: NordicMike
NordicMike Jul 14, 2020 at 10:04:05 (UTC)
Goto Top
Ich denke hier kannst du was abkupfern, nur du brauchst es im Fehlerfall, also den Errolevel ändern.

Per Batch Datei Ping senden wenn Ping Erfolgreich Test ausgeben !
Mitglied: 144705
Solution 144705 Jul 14, 2020 updated at 11:04:49 (UTC)
Goto Top
@echo off
set "host=myhost.domain.tld"  
set "logfile=D:\ping.log"  
:start
ping -n 1 -w 1000 %host% | findstr TTL >nul 2>&1 && (
	echo Pinging %host% success.
) || (
	echo WARNING: Pinging %host% failed!
	echo Host %host% at %date% %time% unreachable. >>"%logfile%"  
)
timeout /t 1 >nul
goto start
Member: erikro
Solution erikro Jul 14, 2020 at 16:35:08 (UTC)
Goto Top
Moin,

auch wenn es schon gelöst ist, hier noch eine Variante mit der Powershell:

while($true) {
    try {

        test-connection 192.168.123.123 -count 1 -ErrorAction Stop

    }

    catch {

        out-file  -filepath x:\pfad\zum\log\log.txt -InputObject "Computer 192.168.123.123 war down: $(get-date)" -append  

         #Hier könnte man sich auch eine Mail schicken lassen oder sonstwas Feines, was mit batch nicht geht. ;-)

    }
    Start-Sleep -Seconds 1
}

Pinged jede Sekunde den gewünschten Rechner an.

hth

Erik