Event::Stats - Event loop statistics


Event-Stats documentation Contained in the Event-Stats distribution.

Index


Code Index:

NAME

Top

Event::Stats - Event loop statistics

SYNOPSIS

Top

XXX

DESCRIPTION

Top

Instrument the Event module in order to gather statistics.

API

Top

collect($yes)

Determines whether statistics are collected. Arithmetically adds $yes to the usage count. Stats are enabled while the usage count is positive.

$round_sec = round_seconds($sec)

Statistics are not collected in one second intervals. This function converts a *desired* time interval into an *available* time interval. Units are in seconds.

$elapse = total_time($sec)

Due to long-running callbacks, measurement intervals may take longer than expected. This function returns the actual clock-time for a given measurement interval.

($rans, $dies, $elapse) = idle_time($sec)
($runs, $dies, $elapse) = $watcher->stats($sec)

Return statistics for the last $sec seconds of operation. Three numbers are returned: the number of times the callback has been invoked, the number of uncaught exceptions and the number of seconds spent within the callback. Also see NetServer::ProcessTop.

enforce_max_callback_time($yes)

Useful for debugging. XXX

SUPPORT

Top

Please direct your insights and complaints to the perl-loop@perl.org mailing list!

COPYRIGHT

Top


Event-Stats documentation Contained in the Event-Stats distribution.

use strict;
package Event::Stats;
use Carp;
use Event 0.53;
use base ('Exporter', 'DynaLoader');
use vars qw($VERSION @EXPORT_OK);
$VERSION = '0.9';
@EXPORT_OK = qw(round_seconds idle_time total_time);

__PACKAGE__->bootstrap($VERSION);

sub enforce_max_callback_time {
    # a bit kludged
    if (@_) {
	my ($yes) = @_;
	$SIG{ALRM} = sub { Carp::confess("Event timed out") } if $yes;
	_enforce_max_callback_time($yes);
    } else {
	_enforcing_max_callback_time()
    }
}

1;
__END__