man IPC::Run3::ProfReporter () - base class for handling profiling data


IPC::Run3::ProfReporter - base class for handling profiling data



See IPC::Run3::ProfPP and for an example subclass.

This class just notes and accumulates times; subclasses use methods like handle_app_call, handle_run_exit and handle_app_exit to emit reports on it. The default methods for these handlers are noops.

If run from the command line, a reporter will be created and run on each logfile given as a command line parameter or on run3.out if none are given.

This allows reports to be run like:

    perl -MIPC::Run3::ProfPP -e1
    perl -MIPC::Run3::ProfPP -e1 foo.out bar.out

Use - to read from STDIN (the log file format is meant to be moderately greppable):

    grep "^cvs " run3.out perl -MIPC::Run3::ProfPP -e1 -

Use --app to show only application level statistics (ie don't emit a report section for each command run).


Returns a new profile reporting object. These methods are called by the handled events (see below).

   $self->app_call( $time );
   my $time = $self->get_app_call_time;
Sets the time (in floating point seconds) when the application, run3(), or system() was called or exited. If no time parameter is passed, uses IPC::Run3's time routine. Use get_...() to retrieve these values (and _accum values, too). This is a separate method to speed the execution time of the setters just a bit.



    Copyright 2003, R. Barrie Slaymaker, Jr., All Rights Reserved


You may use this module under the terms of the BSD, Artistic, or GPL licenses, any version.


Barrie Slaymaker <>