]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/blob - cddl/contrib/dtracetoolkit/Man/man1m/iosnoop.1m
Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.
[FreeBSD/stable/10.git] / cddl / contrib / dtracetoolkit / Man / man1m / iosnoop.1m
1 .TH iosnoop 1m  "$Date:: 2007-08-05 #$" "USER COMMANDS"
2 .SH NAME
3 iosnoop \- snoop I/O events as they occur. Uses DTrace.
4 .SH SYNOPSIS
5 .B iosnoop
6 [\-a|\-A|\-Deghinostv] [\-d device] [\-f filename] [\-m mount_point]
7 [\-n name] [\-p PID]
8 .SH DESCRIPTION
9 iosnoop prints I/O events as they happen, with useful details such
10 as UID, PID, block number, size, filename, etc.
11
12 This is useful to determine the process responsible for 
13 using the disks, as well as details on what activity the process
14 is requesting. Behaviour such as random or sequential I/O can
15 be observed by reading the block numbers.
16
17 Since this uses DTrace, only the root user or users with the
18 dtrace_kernel privilege can run this command.
19 .SH OS
20 Solaris
21 .SH STABILITY
22 stable - needs the io provider.
23 .SH OPTIONS
24 .TP
25 \-a
26 print all data
27 .TP
28 \-A
29 dump all data, space delimited
30 .TP
31 \-D
32 print time delta, us (elapsed)
33 .TP
34 \-e
35 print device name
36 .TP
37 \-i
38 print device instance
39 .TP
40 \-n
41 print major and minor numbers
42 .TP
43 \-o
44 print disk delta time, us
45 .TP
46 \-s
47 print start time, us
48 .TP
49 \-t
50 print completion time, us
51 .TP
52 \-v
53 print completion time, string
54 .TP
55 \-d device
56 instance name to snoop (eg, dad0)
57 .TP
58 \-f filename
59 full pathname of file to snoop
60 .TP
61 \-m mount_point
62 mountpoint for filesystem to snoop
63 .TP
64 \-n name
65 process name
66 .TP
67 \-p PID
68 process ID
69 .PP
70 .SH EXAMPLES
71 .TP
72 Default output, print I/O activity as it occurs,
73
74 .B iosnoop
75 .PP
76 .TP
77 Print human readable timestamps,
78
79 .B iosnoop
80 \-v 
81 .PP
82 .TP
83 Print major and minor numbers,
84 #
85 .B iosnoop
86 \-n
87 .PP
88 .TP
89 Snoop events on the root filesystem only,
90 #
91 .B iosnoop
92 \-m /
93 .PP
94 .SH FIELDS
95 .TP
96 UID
97 User ID
98 .TP
99 PID
100 Process ID
101 .TP
102 PPID
103 Parent Process ID
104 .TP
105 COMM
106 command name for the process
107 .TP
108 ARGS
109 argument listing for the process
110 .TP
111 SIZE
112 size of the operation, bytes
113 .TP
114 BLOCK
115 disk block for the operation (location. relative to this filesystem.
116 more useful with the -n option to print major and minor numbers)
117 .TP
118 STIME
119 timestamp for the disk request, us
120 .TP
121 TIME
122 timestamp for the disk completion, us
123 .TP
124 DELTA
125 elapsed time from request to completion, us (this is the elapsed 
126 time from the disk request (strategy) to the disk completion (iodone))
127 .TP
128 DTIME
129 time for disk to complete request, us (this is the time for the 
130 disk to complete that event since it's last event (time between iodones),
131 or, the time to the strategy if the disk had been idle)
132 .TP
133 STRTIME
134 timestamp for the disk completion, string
135 .TP
136 DEVICE
137 device name
138 .TP
139 INS
140 device instance number
141 .TP
142 D
143 direction, Read or Write
144 .TP
145 MOUNT
146 mount point
147 .TP
148 FILE
149 filename (basename) for I/O operation
150 .PP
151 .SH NOTES
152 When filtering on PID or process name, be aware that poor disk event
153 times may be due to events that have been filtered away, for example
154 another process that may be seeking the disk heads elsewhere.
155 .PP
156 .SH DOCUMENTATION
157 See the DTraceToolkit for further documentation under the 
158 Docs directory. The DTraceToolkit docs may include full worked
159 examples with verbose descriptions explaining the output.
160 .SH EXIT
161 iosnoop will run forever until Ctrl\-C is hit. 
162 .SH AUTHOR
163 Brendan Gregg
164 [Sydney, Australia]
165 .SH SEE ALSO
166 iotop(1M), dtrace(1M)
167