Manual Pages for UNIX Darwin command on man DBI::ProfileDumper::Apache
MyWebUniversity

Manual Pages for UNIX Darwin command on man DBI::ProfileDumper::Apache

DBI::ProfileDumper::ApaUcsheer(3C)ontributed Perl DocumeDnBtIa:t:iPornofileDumper::Apache(3)

NAME

DBI::ProfileDumper::Apache - capture DBI profiling data from

Apache/modperl

SYNOPSIS

Add this line to your httpd.conf:

PerlSetEnv DBIPROFILE 2/DBI::ProfileDumper::Apache

Under modperl2 RC5+ you'll need to also add: PerlSetEnv DBIPROFILEAPACHELOGDIR /serverroot/logs OR add PerlOptions +GlobalRequest to the gobal config section you're about test with

DBI::ProfileDumper::Apache. If you don't do this, you'll see messages

in your errorlog similar to:

DBI::ProfileDumper::Apache ondestroy failed: Global $r object is not available. Set:

PerlOptions +GlobalRequest in httpd.conf at ..../DBI/ProfileDumper/Apache.pm line 144 Then restart your server. Access the code you wish to test using a web browser, then shutdown your server. This will create a set of dbi.prof.* files in your Apache log directory. Get a profiling report with dbiprof: dbiprof /usr/local/apache/logs/dbi.prof.* When you're ready to perform another profiling run, delete the old files rm /usr/local/apache/logs/dbi.prof.* and start again.

DESCRIPTION

This module interfaces DBI::ProfileDumper to Apache/modperl. Using this module you can collect profiling data from modperl applications. It works by creating a DBI::ProfileDumper data file for each Apache process. These files are created in your Apache log directory. You can then use dbiprof to analyze the profile files. UUSSAAGGEE LLOOAADDIINNGG TTHHEE MMOODDUULLEE The easiest way to use this module is just to set the DBIPROFILE environment variable in your httpd.conf:

PerlSetEnv DBIPROFILE 2/DBI::ProfileDumper::Apache

If you want to use one of DBI::Profile's other Path settings, you can use a string like:

PerlSetEnv DBIPROFILE 2/DBI::ProfileDumper::Apache

It's also possible to use this module by setting the Profile attribute of any DBI handle:

$dbh->{Profile} = "2/DBI::ProfileDumper::Apache";

See DBI::ProfileDumper for more possibilities. GGAATTHHEERRIINNGG PPRROOFFIILLEE DDAATTAA Once you have the module loaded, use your application as you normally would. Stop the webserver when your tests are complete. Profile data files will be produced when Apache exits and you'll see something like this in your errorlog:

DBI::ProfileDumper::Apache writing to /usr/local/apache/logs/dbi.prof.2619

Now you can use dbiprof to examine the data: dbiprof /usr/local/apache/logs/dbi.prof.* By passing dbiprof a list of all generated files, dbiprof will automatically merge them into one result set. You can also pass dbiprof sorting and querying options, see dbiprof for details. CCLLEEAANNIINNGG UUPP Once you've made some code changes, you're ready to start again. First, delete the old profile data files: rm /usr/local/apache/logs/dbi.prof.* Then restart your server and get back to work. MMEEMMOORRYY UUSSAAGGEE DBI::Profile can use a lot of memory for very active applications. It collects profiling data in memory for each distinct query your application runs. You can avoid this problem with a call like this:

$dbh->{Profile}->flushtodisk() if $dbh->{Profile};

Calling "flushtodisk()" will clear out the profile data and write it to disk. Put this someplace where it will run on every request, like a CleanupHandler, and your memory troubles should go away. Well, at least the ones caused by DBI::Profile anyway. AUTHOR Sam Tregar COPYRIGHT AND LICENSE Copyright (C) 2002 Sam Tregar This program is free software; you can redistribute it and/or modify it under the same terms as Perl 5 itself.

perl v5.8.8 2006-07-27 DBI::ProfileDumper::Apache(3)




Contact us      |      About us      |      Term of use      |       Copyright © 2000-2019 MyWebUniversity.com ™