Linux上安装dtrace

为了追踪一下自己写的nginx模块的性能, 加上之前看了agentzh大哥的nginx教程, 决定使用dtrace来进行诊断. 在agentzh的教程中, 利用了dtrace来查看access中使用lua的性能状况.

因为之前也有了解过其它的性能检测工具. 褚霸大哥的博客上多次提到了systemtap工具. 这两个工具有相似之处, 大家可以猛击这里查看它们比较.

因为网上有关的信息很少, 这里简单记录下dtrace的安装过程. 因为dtrace是Solaris下的产物, 原生是不支持linux平台的. 后来Paul D. Fox发起了dtrace4linux项目, 这里有一个他本人在stackoverflow上的一个解答.

废话不多说了(好吧, 我承认已经说了很多了…), 直接切入正题:

首先是下载

1
2
3
$ wget ftp://crisp.dyndns-server.com/pub/release/website/dtrace/dtrace-20130530.tar.bz2

$ tar -xf dtrace-20130530.tar.bz2

然后是安装

这里需要看一下README. 首先是安装相关依赖, 根据不同的操作系统执行:

1
2
$ tools/get-deps.pl             # if using Ubuntu
$ tools/get-deps-fedora.sh      # RedHat/Fedora

这里可能会需要重启计算机(在Debian要求了, 但是Fedora下不需要). 接着执行:

1
2
3
$ make all
$ make install
$ make load           (need to be root or have sudo access)

至此大功告成, 有关dtrace的使用之后再总结吧. 希望对大家有所帮助.

附上一个手册: dtrace user guide


后记

折腾了半天, 发现dtrace对linux支持不是很好, 执行脚本一会儿成功, 一会儿失败, 偶尔还重启, 也google不到解答…

郁闷….

Comments