NAME

    Plack::Middleware::Prometheus::RequestTimes - record response times
    with a prometheus histogram.

VERSION

    version 0.0001

DESCRIPTION

    To setup a prometheus metrics app in your PSGI application register
    hook this middleware up with a histogram and the metrics can report on
    your response times.

            use strict;
            use warnings;
            use My::Website;
            use Net::Prometheus;
            use Net::Prometheus::ProcessCollector;
    
            my $client = Net::Prometheus->new;
    
            $client->register( Net::Prometheus::ProcessCollector->new(
               prefix => "parent_process",
               pid => getppid(),
            ) );
            my $response_times = $client->new_histogram(
                    name => "response_times",
                    help => "Application response times",
            );
    
            use Plack::Builder;
    
            my $app = My::Website->apply_default_middlewares(My::Website->psgi_app);
    
            builder {
                    mount "/metrics" => $client->psgi_app;
                    mount '/' => builder {
                            enable 'Prometheus::RequestTimes', observer => $response_times;
                            $app;
                    };
            };

CONFIGURATION

 observer

    Normally a Net::Prometheus::Histogram object for recording the
    observations.

AUTHOR

    Colin Newell <colin@opusvl.com>

COPYRIGHT AND LICENSE

    This software is copyright (c) 2016 by OpusVL.

    This is free software; you can redistribute it and/or modify it under
    the same terms as the Perl 5 programming language system itself.