The Oracle Linux Dynamic Tracing Guide describes how to use DTrace. It also describes the DTrace providers in detail. Most of the information present in this document is generic to all releases of the Oracle Linux 6 operating system.
This release of DTrace supports systems that use the x86_64 processor architecture. It does not support systems that use 32-bit x86 processors.
This document is intended for anyone who needs to understand the behavior of their system. DTrace allows you to explore your system to understand how it works, track down performance problems, or locate the cause of aberrant behavior.
DTrace allows Oracle Linux administrators to:
Dynamically enable and manage hundreds of probes
Dynamically associate logical predicates and actions with probes
Dynamically manage trace buffers and buffer policies
Display and examine trace data from the live system
Implement custom scripts that use the DTrace facility
Implement layered tools that use DTrace to retrieve trace data
This guide will teach you everything you need to know about using DTrace. Basic familiarity with a programming language such as C or a scripting language such as awk or perl will help you learn DTrace and the D programming language faster, but you need not be an expert in any of these areas.
The document is organized as follows:
Chapter 1, About DTrace provides an overview of DTrace.
Chapter 2, The D Programming Language explains the D programming language.
Chapter 3, Aggregations explains how to aggregate the data provided by the probes.
Chapter 4, Actions and Subroutines describes the actions and subroutines supported by DTrace.
Chapter 5, Buffers and Buffering describes the data buffering and management service provided by DTrace.
Chapter 5, Buffers and Buffering explains how to format the output of D programs.
Chapter 7, Speculative Tracing, describes the speculative tracing facility provided by DTrace.
Chapter 8, The dtrace Utility describes the options supported by the dtrace
command.
Chapter 9, Scripting explains how to create interpreter files by using D programs. The interpreter files are similar to shell scripts that you can install as reusable interactive DTrace tools.
Chapter 10, Options and Tunables explains the options and tuning
parameters supported by the dtrace command.
Chapter 11, Providers describes the providers supported by DTrace.
Chapter 12, User Process Tracing explains how to use DTrace to understand the behavior of user processes.
Chapter 13, Performance Considerations explains the performance considerations that you need to understand when using DTrace.
Chapter 14, Stability describes the concepts related to stability in the context of D programs.
Chapter 15, Translators describes the translators supported in D programs.
Chapter 16, Versioning, explains the concepts related to versioning in the context of DTrace.
The following books are recommended and related to the tasks that you need to perform with DTrace:
Kernighan, Brian W. and Ritchie, Dennis M. The C Programming Language. Prentice Hall, 1988. ISBN 0–13–110370–9
Bovet, Daniel P. and Cesati, Marco. Understanding the Linux Kernel, Third Edition. O'Reilly Media, 2005. ISBN 0-59-600565-2
Love, Robert. Linux Kernel Development, Third Edition. Addison Wesley, 2010. ISBN 0-672-32946-8.
For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.
Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.
The documentation for this product is available at:
http://www.oracle.com/technetwork/server-storage/linux/documentation/index.html.
The following text conventions are used in this document:
Convention | Meaning |
|---|---|
boldface | Boldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary. |
italic | Italic type indicates book titles, emphasis, or placeholder variables for which you supply particular values. |
| Monospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter. |