Я написал Perl API, и он используется многими программами в разных командах. Я хочу отслеживать все программы, вызывающие мой метод API. Я хочу иметь что-то вроде ниже
debug("The calling method is ", $XXXX);
Как получить $ XXXX?
perldoc -f caller .
print "The calling function is", (caller 1)[3], "\n";
Также см. Функции в модуле Carp, которые обертывают функцию caller и могут служить своего рода функцией предупреждения с информацией о вызывающем абоненте.
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 ";