procsystime - analyse system call times. Uses DTrace.
procsystime [-acehoT] [ -p PID | -n name | command ]
procsystime prints details on system call times for processes, both the elapsed
times and on-cpu times can be printed.
The elapsed times are interesting, to help identify syscalls that
take some time to complete (during which the process may have slept). CPU
time helps us identify syscalls that are consuming CPU cycles to run.
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 data
- -c
- print syscall counts
- -e
- print elapsed times, ns
- -o
- print CPU times, ns
- -T
- print totals
- -p PID
- examine this PID
- -n name
- examine processes which have this name
- Print elapsed times for PID 1871,
- # procsystime -p 1871
- Print elapsed times for processes called "tar",
- # procsystime -n tar
- Print CPU times for "tar" processes,
- # procsystime -on tar
- Print syscall counts for "tar" processes,
- # procsystime -cn tar
- Print elapsed and CPU times for "tar" processes,
- # procsystime -eon tar
- print all details for "bash" processes,
- # procsystime -aTn bash
- run and print details for "df -h",
- # procsystime df -h
- SYSCALL
- System call name
- TIME (ns)
- Total time, nanoseconds
- COUNT
- Number of occurrences
See the DTraceToolkit for further documentation under the Docs directory. The
DTraceToolkit docs may include full worked examples with verbose descriptions
explaining the output.
procsystime will sample until Ctrl-C is hit.
Brendan Gregg [Sydney, Australia]
dtruss(1M), dtrace(1M), truss(1)