Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re: Forcing stack trace?

by andreas1234567 (Vicar)
on Sep 21, 2007 at 10:25 UTC ( #640324=note: print w/ replies, xml ) Need Help??


in reply to Forcing stack trace?

I frequently use something like this:

use strict; use warnings; use Log::Log4perl qw(:easy); Log::Log4perl->easy_init($WARN); my $log = Log::Log4perl->get_logger('stack'); sub show_call_stack { my ( $path, $line, $subr ); my $max_depth = 30; my $i = 1; if ($log->is_warn()) { $log->warn("--- Begin stack trace ---"); while ( (my @call_details = (caller($i++))) && ($i<$max_depth) ) { $log->warn("$call_details[1] line $call_details[2] in function $ +call_details[3]"); } $log->warn("--- End stack trace ---"); } } sub tze { show_call_stack(); } sub bar { return tze();} sub foo { return bar(); } foo(); __END__ $ perl -w 640319.pl 2007/09/21 12:23:10 --- Begin stack trace --- 2007/09/21 12:23:10 640319.pl line 22 in function main::tze 2007/09/21 12:23:10 640319.pl line 23 in function main::bar 2007/09/21 12:23:10 640319.pl line 25 in function main::foo 2007/09/21 12:23:10 --- End stack trace ---
--
Andreas


Comment on Re: Forcing stack trace?
Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://640324]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (16)
As of 2014-07-25 16:47 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (174 votes), past polls