4.6 Identifying Issues Using DTrace

DTrace is a comprehensive dynamic tracing framework for troubleshooting kernel and application problems on production systems in real time. DTrace can be used to get a global overview of a running system, such as the amount of memory, the CPU time, and file system and network resources used by the active processes. It can also provide much more fine-grained information, such as a log of the arguments with which a specific function is being called or a list of the processes that are accessing a specific file. It is a very powerful dynamic tracing tool that can trace any part of the system. You can instrument the system by writing a simple DTrace script. The tracing gets enabled only for the code area (probe) mentioned in the DTrace script. Hence, there is near zero overhead on the system when the probes are not enabled. This infrastructure can be safely used on a production system, assuming that the user is aware of the possible overhead and impact of running the script.

For additional information about using DTrace on Oracle Linux, see the Oracle Linux DTrace Tutorial and the Oracle Linux Dynamic Tracing Guide.