NAME
Dancer::Logger::File::PerRequest - per-request file-based logging engine
for Dancer
SYNOPSIS
## in yml config
logger: "File::PerRequest"
DESCRIPTION
Dancer::Logger::File::PerRequest is a per-request file-based logging
engine for Dancer.
SETTINGS
logfile_callback
By default, it will be generating YYYYMMDDHHMMSS-$pid-$request_id.log
under logs of application dir.
the stuff can be configured as
* per pid
set 'logfile_callback' => sub {
return $$ . '.log';
};
will genereate $pid.log
* per hour
set 'logfile_callback' => sub {
my @d = localtime();
my $file = sprintf('%04d%02d%02d%02d', $d[5] + 1900, $d[4] + 1, $d[3], $d[2]);
return $file . '.log';
};
will do file as YYYYMMDDHH.log
it's quite flexible that you can configure it as daily or daily + pid +
server or whatever.
log_path
the log path, same as Dancer::Logger::File, default to $appdir/logs
HOOKS
before_file_per_request_close
hook 'before_file_per_request_close' => sub {
my ($fh, $logfile) = @_;
print $fh "# END on " . scalar(localtime()) . "\n";
};
after_file_per_request_close
hook 'after_file_per_request_close' => sub {
my ($logfile, $response) = @_;
# response as Dancer::Response
if ($response->status >= 500) { ## server error
# move file to error dir
} else {
# just rm it?
unlink($logfile);
}
};
AUTHOR
Fayland Lam <
[email protected]>
COPYRIGHT
Copyright 2014- Fayland Lam
LICENSE
This library is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
SEE ALSO