您见过或者使用过哪些有关 Dtrace 的精彩技巧和窍门?
答案1
我曾经用它来检测实时服务器应用程序中的内存泄漏。我为所有 malloc 和 free 调用设置了探测器。malloc 探测器设置为报告函数的返回值,free 探测器设置为报告第一个参数(它给了我每个参数的内存地址)。让探测器运行一段时间后,我编写了一点 perl 来查找没有 free 的 malloc 内存地址,并报告程序函数和 malloc 调用的偏移量。整个过程花了大约 20-30 分钟才找到一个严重的内存泄漏。
替代方案是使用 Purify 等商业软件包。但这并不总是一个选择,尤其是在实时系统上。
答案2
我看到一个 SUN 员工追踪 NFS 共享的使用情况直至用户、使用了哪个文件以及与此相关的各种统计信息。
OpenSolaris 10 非常棒