in reply to But cluck gives you more.
in thread How do I get Cluck output into a log file?
If I understand your question, I think you are looking for information available in caller. You don't want to know who called you, but who called something that called you.
use strict; use Carp; trace('foo'); trace('bar'); func(); sub func { trace('in func'); } sub trace { my $string = shift; my ($package, $filename, $line, $subroutine, $hasargs, $wantarray, $evaltext, $is_require, $hints, $bitmask) = caller( +1); if($subroutine) { print "[$subroutine]: $string\n"; } else { print "[**IN MAIN**]: $string\n"; } } __END__ [**IN MAIN**]: foo [**IN MAIN**]: bar [main::func]: in func
|
|---|