使用stap,我可以将* .stp文件写入
要么跟踪流程的动作,例如:
probe process("mytest").begin
{
printf("Caught mytest process")
}
或跟踪内核函数是否被任何进程调用:
probe kernel.function("do_exit").call #all processes
{
printf("called kernel/exit.c: do_exit\n")
}
但是我的要求是:从特定进程名称跟踪内核函数调用,例如跟踪“ mytest”进程调用的“ sys_open”。
如何编写此.stp语句/函数?谢谢!
我找到了一种方法:使用一个指示程序名称的变量
global prog_name = "mytest";
probe kernel.function("do_exit").call
{
if(execname() == progname){
printf("called kernel/exit.c: do_exit\n");
}
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。