In addition to my earlier suggestion, you might consider use of AOP: https://metacpan.org/pod/Aspect I have not used it for the need you have, but there may be a way you can get what you need. On 9/28/2018 12:39 PM, Warren Young wrote:
On Sep 28, 2018, at 1:13 AM, Stefan Hornburg (Racke) <racke@linuxia.de> wrote:
At any rate, you can strace the Dancer process(es) and see what system calls it does. I’m quite familiar with strace, but I rejected that out of hand at the time, since most Perl code is running way above the OS’s syscall interface.
There are only a couple of cases I can think of where what it says might help. E.g. stuck on accept(2).
No, I really do want to be able to produce a Perl-level stack trace, on demand, without killing the program, as via Carp::confess().
It looks like “perl -d” can’t attach to a running program, either, which would let me use some of these fine Perl modules to produce a backtrace.
I found a partial solution, though:
https://metacpan.org/pod/App%3a%3aStacktrace
Unfortunately for me, it requires Perl 5.10, and this problem happened on a box that’s still running 5.8. (Don’t ask, can’t avoid that.)