Various fix in log parser

tags/0.1.2
Daniel Berteaud 12 years ago
parent 57f93d8b01
commit 60e522ff5b
  1. 10
      root/usr/bin/samba-db-logd

@ -20,7 +20,7 @@ our @exclude = ();
# get command line arguments
GetOptions(
"debug=i" => \$opts{debug},
"log=s" => \$opts{squidlog},
"log=s" => \$opts{log},
"dbhost=s" => \$opts{dbhost},
"dbname=s" => \$opts{dbname},
"dbuser=s" => \$opts{dbuser},
@ -96,16 +96,15 @@ while (defined(my $line=$tail->read)){
my ($username, $client_ip, $client_name, $share,
$action, $status, $access_mode, $file_src, $file_dst) = undef;
# Skip logging if listed in --exclude
next if (grep { $action eq $_ } @exclude);
# Oct 12 17:20:24 sme8 smbd[11176]: admin|192.168.7.50|pc10-45|intranet|mkdir|Nouveau dossier
if ($line =~ m/^\w+\s\d+\s\d+:\d+:\d+\s\w+\ssmbd\[\d+\]:\s+(\w+)\|(\d+\.\d+\.\d+\.\d+)\|([\w\.]+)\|(\w+)\|(\w+)/){
if ($line =~ m/^\w+\s\d+\s\d+:\d+:\d+\s\w+\ssmbd\[\d+\]:\s+(\w+)\|(\d+\.\d+\.\d+\.\d+)\|([\w\.\-]+)\|(\w+)\|(\w+)/){
$username = $1;
$client_ip = $2;
$client_name = $3;
$share = $4;
$action = $5;
# Skip logging if listed in --exclude
next if (grep { $action eq $_ } @exclude);
}
else{
printlog("Couldn't parse this line: $line");
@ -114,7 +113,6 @@ while (defined(my $line=$tail->read)){
my @other = split /\|/, $line;
if (($action eq 'opendir') ||
($action eq 'chdir') ||
($action eq 'connect') ||
($action eq 'disconnect') ||
($action eq 'close')){

Loading…
Cancel
Save