Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Ping LOG per Batch auswerten

Frage Netzwerke Netzwerkmanagement

Mitglied: 6741

6741 (Level 2)

19.05.2008, aktualisiert 21.03.2009, 10261 Aufrufe, 3 Kommentare

Hallo,

ich habe für eine IP ein kleines Log Tool geschrieben.

Es wird ca. alle 10min ein Server angepingt, dies pipe ich in eine Datei und davor ein:


01.
echo ********** %time% >> c:\log\ping_IP_%date%.txt 
02.
 
03.
ping IP -n 10 >> c:\log\ping_IP_%date%.txt
als Warteschleife ein:

ping localhost -n 600

Ich möchte jetzt über alle Dateien eine Auswertung wann die TTL Zeit über 100ms Sekunden war.

ein Auszug aus der LOG Datei:

01.
 
02.
********** 11:33:36,45  
03.
 
04.
 
05.
Ping wird ausgefhrt fr IP mit 32 Bytes Daten: 
06.
 
07.
 
08.
 
09.
Antwort von IP : Bytes=32 Zeit=245ms TTL=125 
10.
 
11.
Antwort von IP : Bytes=32 Zeit=132ms TTL=125 
12.
 
13.
Antwort von IP : Bytes=32 Zeit=210ms TTL=125 
14.
 
15.
Antwort von IP : Bytes=32 Zeit=274ms TTL=125 
16.
 
17.
Antwort von IP : Bytes=32 Zeit=144ms TTL=125 
18.
 
19.
Antwort von IP : Bytes=32 Zeit=147ms TTL=125 
20.
 
21.
Antwort von IP : Bytes=32 Zeit=108ms TTL=125 
22.
 
23.
Antwort von IP : Bytes=32 Zeit=189ms TTL=125 
24.
 
25.
Antwort von IP : Bytes=32 Zeit=270ms TTL=125 
26.
 
27.
Antwort von IP : Bytes=32 Zeit=20ms TTL=125 
28.
 


Mich interessiert jetzt die Zeit und der Tag wenn die TTL 'zeit über 100ms war ....

danke

Euch ...

[Edit Biber] Ein paar Zeilen in <code>-Tags gesetzt, damit es sich lesen lässt. [/Edit]
Mitglied: 60730
20.05.2008 um 11:07 Uhr
Hallo Firewalldevil,

ich hab mir gestern abend den Kopf zerbrochen und bin nicht weitergekommen.

"Meiner" Bescheidenen Ansicht (ich nenn es auch Skriptvermögen) ist das mit den Daten nur mit suchen und ersetzen möglich.

Die "Datenquelle" ist "mir" zu unübersichtlich, als das ich es per Skript ohne SED / Bchange & Excel hinbekommen würde.

Mein Vorschlag für die Zukunft wäre:

So Aufzurufen, mit name der cmd leer Ip adresse - oder tausche das %1 gegen die Ip aus.

Das Skript sucht nicht nach Ausreissern, sondern nach dem Mittelwert - ist dieser höher als 100, wird der ganzen Datensalat in eine Datei 100plus.csv (im gleichen Ordner) geschrieben.

01.
Rem Variablen setzen (Dank an Biber & Bastla für diese kurzen Varianten) 
02.
set "Jahr=%date:~-4%" 
03.
set "Monat=%date:~-7,2%" 
04.
set "Tag=%date:~-10,2%" 
05.
set Zeit=%TIME:~0,5% Uhr 
06.
 
07.
Rem Aufruf mit "Name der Cmd leer IpAdresse" 
08.
Rem Schleifenbeginn 
09.
:ping 
10.
ping localhost mit -n 600 
11.
Ping -n 10 %1 | Find "Mittelwert">$tempo$ 
12.
Set /P ms=<$tempo$ 
13.
Del $tempo$ 
14.
Rem Setze Variable ms (lösche alles - außer der gesuchten Zahl) 
15.
Set ms=%ms:*Mittelwert =% 
16.
Set ms=%ms:* =% 
17.
Set ms=%ms:ms=% 
18.
Rem Wenn MS größer als 100 - erzeuge eine Datei 100plus.csv - die mit Excel ausgewertet werden kann. 
19.
if %ms%  GEQ 100 echo %tag%,%Monat%,%Jahr%,%Zeit%,%1,%ms% >>100plus.csv 
20.
goto ping
Sag mal - ob das für dich so ok ist.
Bitte warten ..
Mitglied: 6741
20.05.2008 um 12:00 Uhr
Hallo Timo,

danke erstmal für die Mühe ....

Grund dieses "Projekt" ist, zu erkennen wann der Server schlechte Antwortzeiten hatte.

Sollte es eine andere Variate geben, die die bessere Werte gibt. Ich bin gerne bereit dies zu testen.

Wende ich die Batch an, bekomme ich eine Datei $tempo$ in dem Ordner wo dies Batch liegt raus.

Also ich habe jetzt für jeden Tag eine Datei ( ping_10_2_0_73_20.05.2008.txt ) in dieser mus der Wert ( TTL > 100 ) überprüft werden. Vorab setze ich die Uhrzeit und dann ping ich 10x auf den Server. Jetzt noch ein ping localhost mit -t 600 für eine ca. 10min Pause, dann gehts wieder von vorne los.

So teste ich alle 10min die TTL Zeit.

Gruß und vorab Danke
Bitte warten ..
Mitglied: 60730
20.05.2008 um 12:24 Uhr
Hallo Timo,

danke erstmal für die Mühe ....

Hat Spass gemacht - von daher - gern geschehen

Grund dieses "Projekt" ist, zu erkennen wann der Server schlechte Antwortzeiten hatte.

Yupp - hab ich verstanden

Wende ich die Batch an, bekomme ich eine Datei $tempo$ in dem Ordner wo dies Batch liegt raus.

Yupp - die wurde nicht gelöscht, weil mir das Tippex ausgegangen ist - ist nun berichtigt
Aus Del $temp$ ist nun richtigerweise Del $tempo$ geworden.

Also ich habe jetzt für jeden Tag eine
Datei ( ping_10_2_0_73_20.05.2008.txt ) in
dieser mus der Wert ( TTL > 100 )
überprüft werden. Vorab setze ich
die Uhrzeit und dann ping ich 10x auf den
Server. Jetzt noch ein ping localhost mit -t
600 für eine ca. 10min Pause, dann gehts
wieder von vorne los.

So teste ich alle 10min die TTL Zeit.

Ok - mit anderen Worten hast du den Schnippsel von mir nun im Einsatz ?

Kannst ja zum testen die Zeile
if %ms% GEQ 100 echo %tag%,%Monat%,%Jahr%,%Zeit%,%1,%ms% >>100plus.csv
gegen
echo %tag%,%Monat%,%Jahr%,%Zeit%,%1,%ms% >>100plus.csv

tauschen - oder den Wert hinter GEQ kleiner setzen.

Bei mir (W2k deu) kommt die 100plus.csv - die zum import in Excel besser .txt heißen sollte - raus.
(Wenn ich GEQ 10 eingesetzt habe)
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Batch & Shell
gelöst Kl. Frage: Log-File schreiben per Batch (3)

Frage von Yauhun zum Thema Batch & Shell ...

Netzwerkmanagement
Switch Remote Log einrichten und auswerten (WinServer2008) (5)

Frage von Mictha zum Thema Netzwerkmanagement ...

Batch & Shell
gelöst Batch um mehrere IP-Adressen via Ping auf Erreichbarkeit zu prüfen (5)

Frage von Galindiesel zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

DSL, VDSL
DSL-Signal bewerten (10)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...