diff options
Diffstat (limited to 'pyfuntop.stp')
| -rw-r--r-- | pyfuntop.stp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/pyfuntop.stp b/pyfuntop.stp new file mode 100644 index 0000000..f235a23 --- /dev/null +++ b/pyfuntop.stp @@ -0,0 +1,21 @@ +#!/usr/bin/stap + +global fn_calls; + +probe python.function.entry +{ + fn_calls[pid(), filename, funcname, lineno] += 1; +} + +probe timer.ms(1000) { + printf("\033[2J\033[1;1H") /* clear screen */ + printf("%6s %80s %6s %30s %6s\n", + "PID", "FILENAME", "LINE", "FUNCTION", "CALLS") + foreach ([pid, filename, funcname, lineno] in fn_calls- limit 20) { + printf("%6d %80s %6d %30s %6d\n", + pid, filename, lineno, funcname, + fn_calls[pid, filename, funcname, lineno]); + } + + delete fn_calls; +} |
