.TH iosnoop 1m "$Date:: 2007-08-05 #$" "USER COMMANDS" .SH NAME iosnoop \- snoop I/O events as they occur. Uses DTrace. .SH SYNOPSIS .B iosnoop [\-a|\-A|\-Deghinostv] [\-d device] [\-f filename] [\-m mount_point] [\-n name] [\-p PID] .SH DESCRIPTION iosnoop prints I/O events as they happen, with useful details such as UID, PID, block number, size, filename, etc. This is useful to determine the process responsible for using the disks, as well as details on what activity the process is requesting. Behaviour such as random or sequential I/O can be observed by reading the block numbers. Since this uses DTrace, only the root user or users with the dtrace_kernel privilege can run this command. .SH OS Solaris .SH STABILITY stable - needs the io provider. .SH OPTIONS .TP \-a print all data .TP \-A dump all data, space delimited .TP \-D print time delta, us (elapsed) .TP \-e print device name .TP \-i print device instance .TP \-n print major and minor numbers .TP \-o print disk delta time, us .TP \-s print start time, us .TP \-t print completion time, us .TP \-v print completion time, string .TP \-d device instance name to snoop (eg, dad0) .TP \-f filename full pathname of file to snoop .TP \-m mount_point mountpoint for filesystem to snoop .TP \-n name process name .TP \-p PID process ID .PP .SH EXAMPLES .TP Default output, print I/O activity as it occurs, # .B iosnoop .PP .TP Print human readable timestamps, # .B iosnoop \-v .PP .TP Print major and minor numbers, # .B iosnoop \-n .PP .TP Snoop events on the root filesystem only, # .B iosnoop \-m / .PP .SH FIELDS .TP UID User ID .TP PID Process ID .TP PPID Parent Process ID .TP COMM command name for the process .TP ARGS argument listing for the process .TP SIZE size of the operation, bytes .TP BLOCK disk block for the operation (location. relative to this filesystem. more useful with the -n option to print major and minor numbers) .TP STIME timestamp for the disk request, us .TP TIME timestamp for the disk completion, us .TP DELTA elapsed time from request to completion, us (this is the elapsed time from the disk request (strategy) to the disk completion (iodone)) .TP DTIME time for disk to complete request, us (this is the time for the disk to complete that event since it's last event (time between iodones), or, the time to the strategy if the disk had been idle) .TP STRTIME timestamp for the disk completion, string .TP DEVICE device name .TP INS device instance number .TP D direction, Read or Write .TP MOUNT mount point .TP FILE filename (basename) for I/O operation .PP .SH NOTES When filtering on PID or process name, be aware that poor disk event times may be due to events that have been filtered away, for example another process that may be seeking the disk heads elsewhere. .PP .SH DOCUMENTATION See the DTraceToolkit for further documentation under the Docs directory. The DTraceToolkit docs may include full worked examples with verbose descriptions explaining the output. .SH EXIT iosnoop will run forever until Ctrl\-C is hit. .SH AUTHOR Brendan Gregg [Sydney, Australia] .SH SEE ALSO iotop(1M), dtrace(1M)