Template::Timer.3pm

Langue: en

Version: 2005-10-17 (ubuntu - 08/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Template::Timer - Rudimentary profiling for Template Toolkit

VERSION

Version 0.04

SYNOPSIS

Template::Timer provides inline timings of the template processing througout your code. It's an overridden version of Template::Context that wraps the "process()" and "include()" methods.

Using Template::Timer is simple.

     my %config = ( # Whatever your config is
         INCLUDE_PATH    => "/my/template/path",
         COMPILE_EXT     => ".ttc",
         COMPILE_DIR     => "/tmp/tt",
     );
 
     if ( $development_mode ) {
         $config{ CONTEXT } = Template::Timer->new( %config );
     }
 
     my $template = Template->new( \%config );
 
 

Now when you process templates, HTML comments will get embedded in your output, which you can easily grep for.

     <!-- TIMER START: process mainmenu/mainmenu.ttml -->
     <!-- TIMER START: include mainmenu/cssindex.tt -->
     <!-- TIMER START: process mainmenu/cssindex.tt -->
     <!-- TIMER END: process mainmenu/cssindex.tt (0.017279 seconds) -->
     <!-- TIMER END: include mainmenu/cssindex.tt (0.017401 seconds) -->
 
     ....
 
     <!-- TIMER END: process mainmenu/footer.tt (0.003016 seconds) -->
     <!-- TIMER END: include mainmenu/footer.tt (0.003104 seconds) -->
     <!-- TIMER END: process mainmenu/mainmenu.ttml (0.400409 seconds) -->
 
 

Note that since INCLUDE is a wrapper around PROCESS, calls to INCLUDEs will be doubled up, and slightly longer than the PROCESS call.

AUTHOR

Andy Lester, "<andy at petdance.com>"

BUGS

Please report any bugs or feature requests to "bug-template-timer at rt.cpan.org", or through the web interface at <http://rt.cpan.org>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

ACKNOWLEDGEMENTS

Thanks to Randal Schwartz, Bill Moseley, and to Gavin Estey for the original code. Copyright 2005 Andy Lester, All Rights Reserved.

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