dtruss - process syscall details. Uses DTrace.
dtruss [-acdeflhoLs] [-t syscall] { -p PID | -n name | command }
dtruss prints details on process system calls. It is like a DTrace version of
truss, and has been designed to be less intrusive than truss.
Of particular interest is the elapsed times and on cpu times,
which can identify both system calls that are slow to complete, and those
which are consuming CPU cycles.
Since this uses DTrace, only the root user or users with the
dtrace_kernel privilege can run this command.
stable - needs the syscall provider.
- -a
- print all details
- -b bufsize
- dynamic variable buffer size. Increase this if you notice dynamic variable
drop errors. The default is "4m" for 4 megabytes per CPU.
- -c
- print system call counts
- -d
- print relative timestamps, us
- -e
- print elapsed times, us
- -f
- follow children as they are forked
- -l
- force printing of pid/lwpid per line
- -L
- don't print pid/lwpid per line
- -n name
- examine processes with this name
- -o
- print on-cpu times, us
- -s
- print stack backtraces
- -p PID
- examine this PID
- -t syscall
- examine this syscall only
- run and examine the "df -h" command
- # dtruss df -h
- examine PID 1871
- # dtruss -p 1871
- examine all processes called "tar"
- # dtruss -n tar
- run test.sh and follow children
- # dtruss -f test.sh
- run the "date" command and print elapsed and on cpu times,
- # dtruss -eo date
- PID/LWPID
- Process ID / Lightweight Process ID
- RELATIVE
- relative timestamps to the start of the thread, us (microseconds)
- ELAPSD
- elapsed time for this system call, us
- CPU
- on-cpu time for this system call, us
- SYSCALL(args)
- system call name, with arguments (some may be evaluated)
See the DTraceToolkit for further documentation under the Docs directory. The
DTraceToolkit docs may include full worked examples with verbose descriptions
explaining the output.
dtruss will run forever until Ctrl-C is hit, or if a command was executed dtruss
will finish when the command ends.
Brendan Gregg [Sydney, Australia]
procsystime(1M), dtrace(1M), truss(1)