27.1.概述¶
DTrace,即动态跟踪,是一个由 Sun™ 开发的工具,用来在生产系统和预生产系统中定位性能瓶颈。除了诊断性能问题以外,DTrace 也可以被用来调查和调试 FreeBSD 内核与用户态程序中的异常行为。
DTrace 是一个卓越的性能分析工具,有着众多用于诊断系统问题的功能。它还可以用来执行预先编写好的脚本,以充分利用其功能。用户可以使用 DTrace 的 D 语言打造他们自己的工具,令用户能够根据特殊需求自定义他们的性能分析。
其在 FreeBSD 中提供了对内核态 DTrace 的完整支持与用户态 DTrace 的实验性支持。用户态 DTrace 允许用户使用 pid
执行对用户态程序的函数边界跟踪,并在用户态程序中插入静态探测器以便之后进行跟踪。像 databases/postgresql12-server 和 lang/php74 这样的 port 提供了一个 DTrace 选项来启用静态探测器。
DTrace 官方指南由 Illumos 项目维护,位于 DTrace 指南。
读完本章后,你将知道:
DTrace 是什么,有什么用。
Solaris™ 和在 FreeBSD 中提供的 DTrace 实现有何区别。
如何在 FreeBSD 中启用和使用 DTrace。
在你阅读本章之前,你应该:
理解 UNIX® 和 FreeBSD 基础(FreeBSD 基础)。
知悉有关 FreeBSD 的安全措施(安全)。