log1.log
--------
Time=00:00:00.001|Request=det|Category=btyjar
Time=00:00:00.002|Request=sdf|Category=345
Time=00:00:00.003|Request=fdgh|Category=cvn
Time=00:00:00.004|Request=cv|Category=ryui
log2.log
--------
Time=00:00:00.001|Request=h5|Category=56yjh
Time=00:00:00.002|Request=hjk|Category=dr6
Time=00:00:00.003|Request=qw|Category=345
Time=00:00:00.004|Request=thgj|Category=234
####
for my $log (@logs) {
if ($log =~ /\.gz$/) {
eval "`gunzip $log`";
next if $@;
$log = substr $log, 0, -3;
}
open(LOG,$log) || warn "log not opened\n";
while () {
chomp;
my @data = split /\|/;
for (@data) {
my($cat,$value) = split /=/;
$logdata{$log}{$.}{lc($cat)} = $value;
}
}
close LOG;
}