2011-06-21 86 views
4

如果有問題,我使用的是Mac OS X,但我相信這將適用於各種操作系統。如果每個操作系統的答案不同,我也會對此有所瞭解。我可以問dtrace啓用了哪些探針?

假設我打開一個終端窗口,啓用一些探測器,並開始使用DTrace收集數據。

從另一個終端窗口,我可以問DTrace什麼樣的探頭已經啓用了嗎?如果是這樣,怎麼樣?

回答

2

我從DTrace郵件列表中的Adam Leventhal獲得了以下信息。首先,他提供了這個腳本,它在Solaris

#!/usr/sbin/dtrace -s 

#pragma D option quiet 

int i; 

tick-100 
/i >= `dtrace_nprobes/ 
{ 
     exit(0); 
} 

tick-100 
{  printf("%4d %10s %20s %20s %10s %s\n", i, 
      stringof(`dtrace_probes[i]->dtpr_provider->dtpv_name), 
      stringof(`dtrace_probes[i]->dtpr_mod), 
      stringof(`dtrace_probes[i]->dtpr_func), 
      stringof(`dtrace_probes[i]->dtpr_name), 
      `dtrace_probes[i]->dtpr_ecb != NULL ? "enabled" : "disabled"); 
     i++ 
} 

不幸的是,在同一個內核變量並非適用於Mac OS X的作品,由於一個錯誤。

相關問題