我在dhcpagent命令中进行了一些更改,并且在测试时,它有点失败。现在我知道在dhcpagent退出之前最后调用了哪个函数。我想跟踪从dhcpagent到特定函数的控件,让我们说foo()。我正在寻找谁调用foo()并调用该函数等等,就像家谱一样,从dhcpagent到foo()。我该怎么做呢 ?我对dtrace有非常基本的了解,比如如何构建基本脚本,但不多了。你能建议我自己学习和编写脚本的脚本/资源吗?
我做了什么尝试:
pid$target::functionname:entry //and the target was dhcpagent from the command line
由于
答案 0 :(得分:2)
我认为以下脚本可以帮助您:
#!/usr/sbin/dtrace -Fs
pid$target:::entry,
pid$target:::return
{
}
在上面的脚本中,它可以打印如何调用该函数。但输出可能很棒!
如果您只关心dhcpagent
模块,我认为以下脚本是更好的选择:
#!/usr/sbin/dtrace -Fs
pid$target:dhcpagent::entry,
pid$target:dhcpagent::return
{
}