cronolog と plackup の連携
multilog に access log と error log をまぜてだすと、エラーでてんのかどうかよくわからなくなっちゃうので、まあわけた方がよろしい。
multilog でパターンマッチで適当に分割するという手もあるけれど、アクセスログは集計などにもつかうので、日ごとにファイルがわかれていた方が便利でしょう。
というわけで、こんな風にしてみた。
use Plack::Builder;
builder {
open my $fh, "| /usr/bin/cronolog /var/log/plackup/%Y/%m/myapp-%Y%m%d.l
og"
or die "cannot load log file: $!";
select $fh; $|++; select STDOUT;
enable 'Plack::Middleware::AccessLog',
logger => sub { print {$fh} @_ };
enable "Plack::Middleware::ReverseProxy";
$app;
};
Published: 2010-03-08(Mon) 15:30