This is an old revision of the document!
DTrace on FreeBSD
FreeBSD includes a substantial port of DTrace: an advanced event-based performance analysis and troubleshooting tool. DTrace can help you identify and quantify the root cause of virtually any performance issue, in both user-level and kernel code. It can be executed using custom and powerful one-liners and scripts.
Getting Started
- Learn DTrace for FreeBSD in 12 easy lessons: Tutorial
- A library of handy DTrace one-liners: One-Liners
- Useful examples for kernel performance or functional analysis: Examples
- Adding support to the FreeBSD kernel: KernelSupport
See Also
- Howto add SDT probes to DTrace in the kernel: HowToAddSDTProbes
Ongoing Development and Meeting Notes
Ideas and new work are kept in the DTraceTODO.
External Resources
- The Dynamic Tracing Guide (aka DTrace Guide) is the language and provider reference. Currently focuses on illumos DTrace.
- Oracle's DTrace User Guide and Solaris Dynamic Tracing Guide for Oracle Solaris 11.
- FreeBSD Handbook section on DTrace: http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/dtrace.html
- The website, which includes scripts, for the Prentice Hall 2011 book: DTrace: Dynamic Tracing in Oracle Solaris, Mac OS X, and FreeBSD
- USENIX 2004 paper on DTrace: Dynamic Instrumentation of Production Systems
- ACM Queue 2006 article: Hidden in Plain Sight
- DTrace Review in Google tech talks (2007)
- jb@'s 2008 BSDCan presentation: dtrace_bsdcan2008_jb.pdf