Thread Mit Regexp Werte aus fortlaufender LogDatei filter (14 answers)
Opened by xiconfjs at 2006-01-21 23:02

xiconfjs
 2006-01-21 23:02
#62121 #62121
User since
2006-01-21
79 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hi,

ich weiß, bestimmt kommt jetzt wieder "guck doch inna Doku" oder "nutze die Suchfunktion", aber das habe ich schon getan, und meine auch, alles richtig gemacht zu haben, aber es klappt halt nicht...mhh hab lange gesucht und probiert, aber es will nicht.

Problem:
Ich will aus einer fortlaufenden Log-Datei (es soll sozulagen "live" ausgelesen werden) die neuen Log-Zeilen (also die unten neu hinzukommen) auslesen, auswerten, und die Werte ausgeben. Doch es kommt entweder zu keiner Ausgabe oder zu dem:
Code: (dl )
Use of uninitialized value in print at test.pl line 13, <LOGDATEI> line 1. 


test.pl
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/perl

use strict;
use warnings;
use IO::Socket::INET;

my $file = 'test.log';
open(LOGDATEI,"<$file") or die $!;
seek(LOGDATEI,0,2); #Ans Ende springen
while(1) { #ne Schleife halt :P
while(<LOGDATEI>) { #Datei auslesen
$_ =~ m/(.+?)\ (.+?)\,(.+?)\,(.+?)\,(.+?)\,(.+?)\w(.+?)\ (.+?)\ (.+?\ .+?)\ (.+)(, from )(.+)(] )(.+)/;
print $2; #2. Wert ausgeben
}
sleep 1; #Warten ca. 1 Sekunde :)
}

exit;


test.log
Code: (dl )
1
2
22-07-05 21:02:49,ALL,Info,AccessLog,    SID: 1 [to channel: Testchannel, from Tester] TestText
22-07-05 21:02:49,ALL,Info,AccessLog, SID: 1 [to channel: Testchannel, from Tester] TestText



Ich danke schonmal im Voraus für eure konstruktiven Vorschläge :P


mFg xiconfjs

View full thread Mit Regexp Werte aus fortlaufender LogDatei filter