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

Logfile-Filterung per Batch

Frage Entwicklung Batch & Shell

Mitglied: 64903

64903 (Level 1)

14.04.2010, aktualisiert 15.04.2010, 2326 Aufrufe, 7 Kommentare

Hallo!

Ich habe mal wieder ein recht kniffeliges Problem....

In einem Logfile "Fehler.log" steht unter anderem folgendes:
2010-04-14 06:43:19,569 ERROR [ .... TEXT ... ] ... TEXT ...

Solche ERROR-Zeilen möchte ich nun herausfiltern (in eine "Auswertung.log" schreiben).
Das Suchen soll mit findstr durchgeführt werden.

Da die Batch als Dienst laufen soll, dürfen nur Zeilen herausgefiltert werden, die nicht
bereits im "Auswertung.log" vorhanden sind.

Bin dankbar für jeden Tipp!
Gruß
Olli
Mitglied: LotPings
14.04.2010 um 14:36 Uhr
Hallo Olli,

wie wärs hiermit - ungetestet:
01.
Findstr /I "ERROR" <Fehler.log | Findstr /V /G:Auswertung.log >>Auswertung.log
Gruß
LotPings
Bitte warten ..
Mitglied: 64903
14.04.2010 um 15:20 Uhr
01.
Findstr /I "ERROR" <Fehler.log | Findstr /V /G:Auswertung.log >>Auswertung.log

Hi LotPings,
01.
findstr /C:"ERROR [" Fehler.log >> Auswertung.log
funktioniert! Es werden nur ERROR-Zeilen in die "Auswertung.log" geschrieben.

Das mit dem Suchen im "Auswertung.log" funktioniert so aber nicht.
01.
| Findstr /V /G:Auswertung.log
Wonach wird denn hier gesucht?
Bitte warten ..
Mitglied: LotPings
14.04.2010 um 15:56 Uhr
Die vorher gefundenen Zeilen sollten dadurch mit der vorhandenen Auswertung.log abgegelichen werden und nur nicht schon vorhandene an die Auswertung.log angehängt werden. Das funktioniert aber leider so auch nicht ohne zwischengeschaltete Temporäre Datei.

Wie gesagt das war aus dem Handgelenk und ungetestet.

Dies sollte funktionieren:
01.
Findstr /I "ERROR" <Fehler.log | Findstr /V /G:Auswertung.log >Temp.log 
02.
Type Temp.log >>Auswertung.log
Gruß
LotPings
Bitte warten ..
Mitglied: 64903
14.04.2010 um 16:27 Uhr
Mit der zwischengeschalteten temporären Datei klappt's.
Danke!

Doch leider gibt es doch noch ein Problem:
Die Zeilen sind teilweise knapp über 300 Zeichen lang und es kommt folgende Meldung: "FINDSTR: Suchzeichenfolge zu lang."

Zum Vergleichen würden die ersten 23 Zeichen ausreichen - aus dem Beispiel von oben also: 2010-04-14 06:43:19,569

Gruß
Olli
Bitte warten ..
Mitglied: LotPings
14.04.2010 um 17:00 Uhr
Hallo Olli,

wenn die Restriktionen der vorhandenen Tools den Einsatz verbieten, bist du mit einer Batch-Lösung und die auch noch als Dienst am Ende der Fahnenstange.

Ohne jetzt dein genaues Umfld zu kennen würde ich LogParser oder eine anderes auf die Bearbeitung von LogFiles spezialisiertes Tool vorschlagen.

gruß
LogParser
Bitte warten ..
Mitglied: 64903
14.04.2010 um 17:52 Uhr
Hmmm.... ich hab zwar noch keine Idee wie, aber das muss doch machbar sein.
Gibt FINDSTR denn immer ganze Zeilen zurück?
Ansonsten könnte man ja in einem "Vergleich.log" nur das 23 Zeichen-Datumsformat abspeichern.

Das soll jedenfalls unbedingt als Batch laufen. Und eine läuffähige Endlos-Loop-Batch als Dienst einzurichten ist ja kein Problem.

Ist folgendes nicht machbar?
1) Fehler.log "YYYY-MM-DD HH:MM:SS,XXX ERROR [ .... TEXT ... ] ... TEXT ..."
2) Vergleich.log "YYYY-MM-DD HH:MM:SS,XXX"
3) Auswertung.log "YYYY-MM-DD HH:MM:SS,XXX ERROR [ .... TEXT ... ] ... TEXT ..."

Wenn "YYYY-MM-DD HH:MM:SS,XXX" aus Fehler.log bereits in Vergleich.log vorhanden mache nichts,
ansonsten schreibe "YYYY-MM-DD HH:MM:SS,XXX ERROR [ .... TEXT ... ] ... TEXT ..." in Auswertung.log

Gruß
Olli
Bitte warten ..
Mitglied: LotPings
15.04.2010 um 01:08 Uhr
Zitat von 64903:
Hmmm.... ich hab zwar noch keine Idee wie, aber das muss doch machbar sein.
Gibt FINDSTR denn immer ganze Zeilen zurück?
Per Definition, JA.
AFAIK lässt sich die Restriktion der Zeilenlänge auch nicht umgehen.

Irgendwie entzieht sich mir auch der Sinn des Ganzen.
Solange niemand die erzeugte Datei beachtet ist das doch nur unnötige Energieverschwendung.

Gruß
LotPings
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst FOR R Ordner Filterung? KLAMMERAUF BATCH KLAMMERZU (9)

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Batch & Shell
Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Batch & Shell
gelöst Laufwerksbezeichnung (label) in Batch als Variable nutzen (7)

Frage von tobias.mock zum Thema Batch & Shell ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
gelöst Benutzer lässt sich nur an einem Clientcomputer anmelden (17)

Frage von Ammann zum Thema Windows Server ...

Vmware
gelöst Wie würdet Ihr eine ESXi Cluster Farm managen? (11)

Frage von AlFalcone zum Thema Vmware ...

Batch & Shell
gelöst Gruppenzugehörigkeit von AD Usern ermitteln - die Perfektion fehlt (11)

Frage von Stefan007 zum Thema Batch & Shell ...