Fields
Type of userspace probe. Currently only
"usdt" (User-level Statically Defined Tracing) is supported.Symbol name of the USDT probe that generated the event.Example:
"http__server__request", "mysql__query__start"Instruction pointer - the memory address of the symbol associated with this event.This is the actual address where the probe fired in the process’s address space.
Full filesystem path to the binary (executable or shared library) containing the probe.Example:
"/usr/bin/node", "/usr/lib/libmysqlclient.so.21"Process ID of the process where the probe fired.
Thread ID of the thread where the probe fired.For single-threaded processes, this typically equals the PID.
Display Format
The userspace section is displayed as:binary_name is extracted from the last component of path.
Example
Example JSON
Node.js HTTP Probe
MySQL Query Probe
Multi-threaded Application
When This Section Appears
The userspace section is present when:- Events are captured from USDT probes in userspace applications
- Applications are instrumented with USDT probes
- Retis is configured to attach to userspace probe points
kernel or userspace, never both.
USDT Probes
USDT (User-level Statically Defined Tracing) probes are static tracepoints embedded in application binaries. They allow observing application behavior without modifying code. Common applications with USDT probes:- Node.js: HTTP requests, GC events, V8 operations
- MySQL/PostgreSQL: Query execution, connection events
- Python: Function calls, GC events (when compiled with USDT support)
- Ruby: Method calls, object allocation
USDT probes must be compiled into the application. Use
readelf -n <binary> or tplist-bpfcc -l <binary> to list available probes.