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