ref: 3b9c359adee736531f204ac53500edf16d7c0fb2
dir: /man/4/iostats/
.TH IOSTATS 4 .SH NAME iostats \- file system to measure I/O .SH SYNOPSIS .B iostats [ .B -d ] [ .B -f .I dbfile ] .I cmd [ .I args... ] .SH DESCRIPTION .I Iostats is a file server that interposes itself between a program and a copy of the current name space, which allows it to gather statistics of file system use at the level of the file system protocol of .IR intro (5). When the program exits, a report is printed on standard error. .PP The report consists of three sections. The first section reports the amount of user data in .B read and .B write messages sent by the program and the average rate at which the data was transferred. The .B protocol line reports the amount of data sent as message headers, that is, protocol overhead. The .B rpc line reports the total number of file system transactions. .PP The second section gives the number of messages, the fastest, slowest, and average turn around time and the amount of data involved with each 9P message type. The final section gives an I/O summary for each file used by the program in terms of opens, reads and writes. .PP The .B -d option causes .I iostats to write a debugging log to .I dbfile (default: .BR iostats.out ) that records all protocol messages. .SH EXAMPLE Display summary of file I/O incurred by .IR ls (1): .IP .EX iostats ls .EE .PP Start a new shell, displaying all 9P traffic caused by the shell or its children: .IP .EX iostats -df /fd/1 sh .EE .SH SOURCE .B /appl/cmd/iostats.b .SH BUGS Poor clock resolution means that large amounts of I/O must be done to get accurate rate figures. .PP Can be fooled by programs that do fresh mounts outside its purview. .PP Cannot monitor standard input or output.