a4ac56
/*
a4ac56
    Example of the perl systemtap tapset shows a nested view of perl subroutine
a4ac56
    calls and returns across the whole system.
a4ac56
a4ac56
    To run:
a4ac56
        stap perl-example.stp (for all perl processes)
a4ac56
    For specific perl process:
a4ac56
        stap perl-example.stp -c COMMAND
a4ac56
*/
a4ac56
a4ac56
probe perl.sub.call
a4ac56
{
a4ac56
    printf("%s => sub: %s, filename: %s, line: %d, package: %s\n",
a4ac56
        thread_indent(1), sub, filename, lineno, package)
a4ac56
}
a4ac56
a4ac56
probe perl.sub.return
a4ac56
{
a4ac56
    printf("%s <= sub: %s, filename: %s, line: %d, package: %s\n",
a4ac56
        thread_indent(-1), sub, filename, lineno, package)
a4ac56
}