I'm trying to instrument my events to catch extremely long-running
events (infinite loops, database table locks, etc.). What I'd like to
do is have a timer (say, 30 seconds) in place inside Event.pm. In
pseudocode:
# Ready to handle next event.
local($SIG{ALRM}) = sub {
$elapsed += time() - $time;
printf "In event %s, #%d, elapsed %f",
$event->{desc}, $event->{count}, $elapsed;
$time = time();
}
alarm(30);
$event->cb();
alarm(0);
(The "count" is so I can distinguish between different occurrences of
the same event.)
Are there any "gotchas" I should watch for? I've not made any attempt
previously to alter the Event.pm code.
--
Jeff Boes vox 269.226.9550 ext 24
Database Engineer fax 269.349.9076
Nexcerpt, Inc. http://www.nexcerpt.com
...Nexcerpt... Extend your Expertise