systemtap
systemtap使用以及案例分析
程序猿Ricky的日常干货
擅长扫地、打杂、开车。。
展开
-
Linux跟踪系统调用耗时的方法(高级篇)
可以使用很多种办法来trace内核系统调用耗时,比如:使用perf probe功能使用ftrace功能使用bpftrace使用bcc使用systemtapbpftrace使用bpftrace可以比较简单的实现该功能,直接使用单行命令即可:bpftrace -e 'tracepoint:syscalls:sys_enter_write { @entry[tid]= nsecs;} tracepoint:syscalls:sys_exit_write /@entry[tid]/ {$inte原创 2021-03-17 17:01:22 · 2017 阅读 · 3 评论 -
systemtap跟踪系统调用
systemtap查找系统调用点:stap -L 'syscall.*'查找系统调用返回点:stap -L 'syscall.*.*'比如open系统调用,找到的结果如下:syscall.opensyscall.open.return原创 2021-01-05 11:25:18 · 477 阅读 · 0 评论 -
tapset: 可以复用的内建函数
systemtap支持的内建函数实际上就是通过tapset script实现的一些通用库,可以通过官方文档来查看systemtap内建的一系列函数。https://sourceware.org/systemtap/tapsets/原创 2020-12-29 11:47:09 · 211 阅读 · 0 评论 -
systemtap相关的学习文档
查找系统调用点:stap -L 'syscall.*'查找系统调用返回点:stap -L 'syscall.*.*'比如open系统调用,找到的结果如下:syscall.opensyscall.open.return原创 2020-12-28 12:06:10 · 334 阅读 · 0 评论 -
使用systemtap进行内核跟踪
如果想要添加一个systemtap内核桩位,但是又不知道该插入到哪里,可以通过如下命令查看systemtap支持的所有的打点位置:stap -L '*.*' 如果想查看这些位置点一共分为哪些类别,可以对输出记过做一下归纳处理: stap -L '*.*' > list.txtawk -F '.' '{print $1}' list.txt | uniq -c | sort -rn...原创 2020-12-28 11:50:48 · 1208 阅读 · 0 评论