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
) =
@_
;
$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 <fayland@gmail.com>
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.