1 #!/usr/bin/perl
2 #===============================================================================
3 #
4 # FILE: log-parser.pl
5 #
6 # USAGE: ./log-parser.pl
7 #
8 # DESCRIPTION:
9 #
10 # OPTIONS: ---
11 # REQUIREMENTS: ---
12 # BUGS: ---
13 # NOTES: ---
14 # AUTHOR: (), <>
15 # COMPANY:
16 # VERSION: 1.0
17 # CREATED: 13.03.2008 14:51:03 CET
18 # REVISION: ---
19 #===============================================================================
21 use strict;
22 use warnings;
23 use Getopt::Long;
25 my $log_file = "/var/log/gosa-si-server.log";
26 my $within_log_session = 0;
28 my $session;
29 GetOptions("s|session=s" => \$session);
31 if( not defined $session) { die "\tplease define a session to parse\n\ti.e. 'perl log-parser.pl -s 4'\n" };
33 print "session: $session\n";
35 open(FILE, "<$log_file") or die "\t can not open log-file";
37 # Read lines
38 my $line;
39 while ($line = <FILE>){
41 chomp($line);
42 my @line_list = split(" ", $line);
44 if (not $line_list[4]) {
45 if ($within_log_session) {
46 print "$line\n";
47 }
48 next;
49 }
51 if($line_list[4] eq $session) {
52 print "$line\n";
53 $within_log_session = 1;
55 } else {
56 $within_log_session = 0;
57 }
58 }