Plack-Middleware-ConsoleLogger

 view release on metacpan or  search on metacpan

lib/Plack/Middleware/ConsoleLogger.pm  view on Meta::CPAN


use JavaScript::Value::Escape;

sub call {
    my($self, $env) = @_;

    my @logs;
    $env->{'psgix.logger'} = sub {
        my $args = shift;
        push @logs, $args;
        # TODO cascade?
    };

    $self->response_cb($self->app->($env), sub {
        my $res = shift;

        if (Plack::Util::header_get($res->[1], 'Content-Type') =~ /html/) {
            return sub {
                my $chunk = shift;
                return unless defined $chunk;
                $chunk =~ s!</body>!$self->generate_js(\@logs) . "</body>"!ei;



( run in 0.654 second using v1.01-cache-2.11-cpan-49f99fa48dc )