1.3 About DTrace Providers

The following table lists the providers that are included with the Oracle Linux implementation of DTrace and the kernel modules that include the providers.

Provider

dtrace Kernel Module

Description

dtrace

dtrace

Provides probes that relate to DTrace itself, such as BEGIN, ERROR, and END. You can use these probes to initialize DTrace's state before tracing begins, process its state after tracing has completed, and handle unexpected execution errors in other probes.

fbt

fbt

Supports function boundary tracing (FBT) probes, which are at the entry and exits of kernel functions.

fasttrap

fasttrap

Supports user-space tracing of DTrace-enabled applications.

io

sdt

Provides probes that relate to data input and output. The io provider enables quick exploration of behavior observed through I/O monitoring.

IP

sdt

Provides probes for the IP protocol (both IPv4 and IPv6).

lockstat

sdt

Provides probes for locking events including: mutexes, read-write locks, and spinlock.

perf

sdt

Provides probes that correspond to each perf tracepoint, including typed arguments.

proc

sdt

Provides probes for monitoring process creation and termination, LWP creation and termination, execution of new programs, and signal handling.

profile

profile

Provides probes that are associated with an asynchronous interrupt event that fires at a fixed and specified time interval, rather than with any particular point of execution. You can use these probes to sample some aspect of a system's state.

sched

sdt

Provides probes related to CPU scheduling. Because CPUs are the one resource that all threads must consume, the sched provider is very useful for understanding systemic behavior.

syscall

systrace

Provides probes at the entry to and return from every system call. Because system calls are the primary interface between user-level applications and the operating system kernel, these probes can offer you an insight into the interaction between applications and the system.

TCP

sdt

Provides probes in the code that implements the TCP protocol, for both IPv4 and IPv6.

UDP

sdt

Provides probes in the code that implements the UDP protocol, for both IPv4 and IPv6.

SDT is a multi-provider, in that it implements multiple providers under the same provider.

The fasttrap provider is considered a meta-provider, which means it is a provider framework. The fasttrap meta-provider is used to facilitate the creation of providers that are instantiated for user-space processes.

See DTrace Providers in the Oracle® Linux: DTrace Guide for more information about providers and their probes.