NAME
Plack::Middleware::ModuleInfo - show the perl module information
SYNOPSIS
use Plack::Builder;
builder {
enable 'ModuleInfo',
allow => ['127.0.0.1'],
path => '/module_info';
$app;
};
then access to the server
% curl http://server:port/module_info?Some-Module
---
PID: 28268
lib:
- /home/user/perlbrew/perls/perl-5.18/lib/site_perl/5.18.4/x86_64-linux
- /home/user/perlbrew/perls/perl-5.18/lib/site_perl/5.18.4
- /home/user/perlbrew/perls/perl-5.18/lib/5.18.4/x86_64-linux
- /home/user/perlbrew/perls/perl-5.18/lib/5.18.4
mod:
file: /home/user/perlbrew/perls/perl-5.18/lib/5.18.4/Some/Module.pm
name: Some::Module
version: 0.01
DESCRIPTION
Plack::Middleware::ModuleInfo is the Plack middleware for showing module information on the process.
METHODS
- prepare_app
- call
CONFIGURATIONS
path
path => '/module_info',
location that displays module information
allow
allow => '127.0.0.1'
allow => ['192.168.0.0/16', '10.0.0.0/8']
host based access control of a page of module information. supports IPv6 address.
dumper
You can customize the result.
use JSON qw/encode_json/;
builder {
enable 'ModuleInfo',
allow => '127.0.0.1',
path => '/module_info',
dumper => sub {
my ($info, $env) = @_;
[200, ['Content-Type' => 'application/json'], [encode_json($info)]];
};
sub { [200,[],['OK']] };
};
REPOSITORY
Plack::Middleware::ModuleInfo is hosted on github: http://github.com/bayashi/Plack-Middleware-ModuleInfo
I appreciate any feedback :D
AUTHOR
Dai Okabayashi <bayashi@cpan.org>
SEE ALSO
LICENSE
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.