Skip to end of metadata
Go to start of metadata

DTrace exists to help you figure out how the system works and why the system is sluggish or acting in an unexpected manner. The name is short for Dynamic Tracing: a powerful idea pioneered by DTrace. Dynamic tracing allows one to peer into all parts of the system -- kernel, device drivers, libraries, services, web servers, applications, databases -- without any restarts, recompilations,or overhead. DTrace is a powerful tool in any programmer's toolkit, and has been included by default with various operating systems including Illumos, Solaris, Mac OS X, FreeBSD, and QNX. A Linux port is in development.

DTrace works by dynamically patching live running instructions with instrumentation code. The DTrace facility also supports Static Tracing: where user-friendly trace points are added to code and compiled-in before deployment.

DTrace provides a language, 'D', for writing DTrace scripts and one-liners. The language is like C and awk, and provides powerful ways to filter and summarize data in-kernel before passing to user-land. This is an important feature that enables DTrace to be used in performance-sensitive production environments, as it can greatly reduce the overhead of gathering and presenting data. ...more

There is also a pony.

DTrace for Beginners

More DTrace


Videos on DTrace

dtrace.conf 2012 Videos

For a good overview and wrap-up, see Adam's blog post on dtrace.conf.

State of the Union - video Bryan Cantrill
Setting the Agenda - video  
User-Level CTF - video Adam Leventhal
Dynamic Translators - video Dave Pacheco
Control flow & language enhancements - video Eric Schrock
Carousel ride!  
Clang Parser for DTrace - video John Thompson
Visualizations - video Brendan Gregg
Visualizations, Enabling toolchain for seamless USDT - video Theo Schlossnagle
Visualizations - video
Richard Elling
DTrace in node.js - video Mark Cavage
User-land probes for Erlang virtual machine - video Scott Lystig Fritchie
DTrace on Linux - video Kris Van Hees
ZFS DTrace provider Matt Ahrens
DTrace on FreeBSD - video Ryan Stone
Barriers to Adoption - video Jarod Jenson

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Feb 22, 2013

    None of the links on this page will work, ever.

  2. Jun 25, 2013

    You can find the DTrace Tutorial on the "Way Back Machine" at

    But I doubt if any of the links from there will work.

    It's still a useful article. Someone should capture and re-edit it and put it somewhere, like maybe.