Plack::Middleware::Failsafe
新年1つ目のモジュールは例外を一番外側でcatchして、ログを出力後、エラー画面を表示するMiddlewareを作りました。もともとは、Railsのmiddlewareなのですが、RailsのMiddlewareは、Railsに依存してしまっていたので、依存しないように分離してあります。
http://github.com/dann/p5-plack-middleware-failsafe
使い方は、以下のようにerror画面を指定するだけです。
use Plack::Builder; use Plack::Middleware::Failsafe; my $app = builder { enable "Failsafe", error_template_path => "/myapp/errors/500.html"; sub { die 'error'; }; };
今まではこの処理をWAFの中に作りこんでいたんですが、これはMiddlewareとして外側に出したほうがいいかなということで、ポーティングしてみました。