如何在Perl中的方法中打印调用程序/模块?

时间:2010-04-07 04:49:38

标签: perl trace

我编写了一个Perl API,它被团队中的许多程序使用。我想跟踪调用我的API方法的所有程序。我希望有类似下面的内容

 debug("The calling method is ",  $XXXX); 

如何获得$ XXXX?

2 个答案:

答案 0 :(得分:10)

perldoc -f caller

print "The calling function is", (caller 1)[3], "\n";

答案 1 :(得分:2)

另请参阅Carp模块中的函数,这些函数包含caller函数,可以作为一种带有调用者信息的警告函数。

use Carp qw(carp cluck);

carp "This function was called from ";  # caller info will be appended to output

cluck "The full stack trace up to this point is ";