App-Elog
view release on metacpan or search on metacpan
}
elsif ($letter eq "i") {
my $name = lc $c->{curly};
$name =~ s/-/_/g;
$a->{$name} = $value;
}
elsif ($letter eq "I") {
$a->{req_bytes} = $value;
}
elsif ($letter eq "k") {
$a->{keepalives} = $value;
}
elsif ($letter eq "l") {
$a->{ident} = $value;
}
elsif ($letter eq "L") {
$a->{errid} = $value;
}
elsif ($letter eq "m") {
$a->{method} = $value;
}
}
if (!@captures) {
die "Unable to parse format: $format\n";
}
return \@captures;
}
sub parse_access_line_different {
my ($line) = @_;
# For lines like:
# unique_id:"Y0gPiJCuUIKvl11H6djHxgAAAUM" remote_host:"184.94.203.3" client_IP:"184.94.203.3" X-Real-IP:"92.205.104.221" ident:"-" user:"-" time:"[13/Oct/2022:08:15:52 -0500]" req:"GET /foo.cgi?asdf=436 HTTP/1.1"...
my $a = {};
my %key_trans = (
"time" => "datestr",
"client_ip" => "ip",
"ua" => "user_agent",
"req" => "request",
"initial_status" => "status",
"final_status" => "status",
"reqtime_usec" => "reqtime",
);
( run in 0.592 second using v1.01-cache-2.11-cpan-df04353d9ac )