NAME
MasonX::Profiler - Mason per-component profiler
VERSION
This document describes version 0.07 of MasonX::Profiler.
SYNOPSIS
In the Mason handler:
use MasonX::Profiler;
my $ah = HTML::Mason::ApacheHandler->new(
preamble => 'my $p = MasonX::Profiler->new($m, $r);',
# ...
);
Note that CGIHandler and Apache2Handler works, too.
Alternatively, in httpd.conf, before loading your PerlHandler
:
PerlModule MasonX::Profiler
PerlSetVar MasonPreamble "my $p = MasonX::Profiler->new($m, $r);"
Note that if you are using virtual hosts, the two lines above must be inside the <VirtualHost>
block, not outside it.
INSTALLATION
MasonX::Profiler uses the standard perl module install process:
cpansign -v # optional; see SIGNATURE for details
perl Makefile.PL
make # or 'nmake' on Win32
make test
make install
DESCRIPTION
This module prints per-component profiling information to STDERR
(usually directed to the Apache error log). Its output looks like this:
=Mason= 127.0.0.1 - /NoAuth/webrt.css BEGINS {{{
=Mason= 127.0.0.1 - /NoAuth/webrt.css {{{
=Mason= 127.0.0.1 - /Elements/Callback {{{
=Mason= 127.0.0.1 - /Elements/Callback }}} 0.0008
=Mason= 127.0.0.1 - /NoAuth/webrt.css }}} 0.0072
=Mason= 127.0.0.1 - /NoAuth/webrt.css }}} ENDS
Each row contains five whitespace-separated fields: =Mason=
, remote IP address, -
, indented component name, and how many seconds did it take to process that component, including all subcomponents called by it.
The beginning and end of the initial request is represented by the special time fields BEGINS
and ENDS
.
AUTHORS
Best Practical Solutions, LLC <modules@bestpractical.com>
Autrijus Tang <autrijus@autrijus.org>
COPYRIGHT
Copyright 2002, 2003, 2004 by Autrijus Tang <autrijus@autrijus.org>.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.