Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: Error handling - how much/where/how?

by thcsoft (Monk)
on Jun 13, 2005 at 01:36 UTC ( #466023=note: print w/ replies, xml ) Need Help??


in reply to Error handling - how much/where/how?

in addition to what salva and Ultra stated:
- you might want to take a look at Carp.pm
- there's a CORE function named caller.
- you can install hooks for every signal, even $SIG{__DIE__}.

e.g.:

local $SIG{__DIE__} = sub { my $i = -1; while (my @c= caller(++$i)) { print " at $c[1] line $[2]\n"; } };

language is a virus from outer space.


Comment on Re: Error handling - how much/where/how?
Download Code
Re^2: Error handling - how much/where/how? (a plug for Devel::SimpleTrace)
by grinder (Bishop) on Jun 14, 2005 at 07:50 UTC

    I used to hand-roll similar stuff, badly. These days I have learnt to become Lazy, and I now use Devel::SimpleTrace. That's usually good enough for me to figure out the course of events when Things Go Wrong.

    - another intruder with the mooring in the heart of the Perl

      another way is to use Carp::croak to report errors and then use...
      perl -MCarp=verbose foo.pl
      to get stack traces.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (15)
As of 2014-08-22 16:10 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (160 votes), past polls