index 59912a8bfca98225a73f1341d1b9b9499c7652e9..7a7cd5e74946c7afbbd245e4f4396a7615d99d9d 100755 (executable)
use strict;
use warnings;
use Getopt::Long;
+use Data::Dumper;
+my $pattern;
my $log_file = "/var/log/gosa-si-server.log";
-my $session;
-GetOptions("s|session=s" => \$session);
-if( not defined $session) { die "\tplease define a session to parse\n\ti.e. 'perl log-parser.pl -s 4'\n" };
+### MAIN ######################################################################
-print "session: $session\n";
+GetOptions(
+ "p|pattern=s" => \$pattern,
+ );
-open(FILE, "<$log_file") or die "\t can not open log-file";
-
-# Read lines
-my $line;
-while ($line = <FILE>){
- next if $line =~ /^\s/;
+open(FILE, "<$log_file") or die "\ncan not open log-file '$log_file'\n";
+my @lines;
+my $messages = {};
+# Read lines
+while ( my $line = <FILE>){
chomp($line);
- my @line_list = split(" ", $line);
-
- next if not $line_list[4];
-
- if($line_list[4] eq $session) {
-
- print "$line\n";
+
+ # start of a new message, plot saved log lines
+ if ($line =~ /$pattern/ ) {
+ print "$line\n";
+ }
- }
}
+
+close FILE;