DTrace can run your script through the C preprocessor before the code is compiled. You can use all of the standard preprocessor features to make macros with common code and include C header files to include type definitions of library types. The D compiler automatically loads the set of C type descriptions for the kernel.
DTrace has a number of tunable parameters you can change via pragmas. Some useful ones:
same as passing -q on the command-line
dtrace prints the name of the function if an action is empty. If you turn on this pragma, DTrace will indent function call names based on call depth, giving you a call trace.
Example 9.14 is a script that traces ...