SYNOPSIS

use DBIx::Profile; or "perl -MDBIx::Profile <program>" use DBI; $dbh->printProfile();

DESCRIPTION

DBIx::Profile is a quick and easy, and mostly transparent, profiler for scripts using DBI. It collects information on the query level, and keeps track of first, failed, normal, and total amounts (count, wall clock, CPU time) for each function on the query.

NOTE: DBIx::Profile use Time::HiRes to clock the wall time and the old standby times() to clock the CPU time. The CPU time is pretty coarse.

DBIx::Profile can also trace the execution of queries. It will print a timestamp and the query that was called. This is optional, and occurs only when the environment variable DBIXPROFILETRACE is set to 1. (ex: (bash) export DBIXPROFILETRACE=1).

Not all DBI methods are profiled at this time. Except for replacing the existing "use" and "connect" statements, DBIx::Profile allows DBI functions to be called as usual on handles.

Prints information to STDERR, prefaced with the pid.

RECIPE

1) Add "use DBIx::Profile" or execute "perl -MDBIx::Profile <program>" 2) Optional: add $dbh->printProfile (will execute during disconnect otherwise) 3) Run code 4) Data output will happen at printProfile or $dbh->disconnect;

METHODS

printProfile $dbh->printProfile();

Will print out the data collected. If this is not called before disconnect, disconnect will call printProfile.

setLogFile $dbh->setLogFile("ProfileOutput.txt");

Will save all output to the file.

AUTHORS

Jeff Lathan, [email protected] Kerry Clendinning, [email protected]

Aaron Lee, [email protected] Michael G Schwern, [email protected]

RELATED TO DBIx::Profile…

L<perl(1)>, L<DBI>