Content-type: text/html; charset=UTF-8
Man page of biosnoop
biosnoop
Section: Maintenance Commands (8)
Updated: 2015-09-16
Index
Return to Main Contents
NAME
biosnoop - Trace block device I/O and print details incl. issuing PID.
SYNOPSIS
biosnoop [-hQ]
DESCRIPTION
This tools traces block device I/O (disk I/O), and prints a one-line summary
for each I/O showing various details. These include the latency from the time of
issue to the device to its completion, and the PID and process name from when
the I/O was first created (which usually identifies the responsible process).
This uses in-kernel eBPF maps to cache process details (PID and comm) by I/O
request, as well as a starting timestamp for calculating I/O latency.
This works by tracing various kernel blk_*() functions using dynamic tracing,
and will need updating to match any changes to these functions.
This makes use of a Linux 4.4 feature (bpf_perf_event_output());
for kernels older than 4.4, see the version under tools/old,
which uses an older mechanism
Since this uses BPF, only the root user can use this tool.
REQUIREMENTS
CONFIG_BPF and bcc.
OPTIONS
- -h
-
Print usage message.
- -Q
-
Include a column showing the time spent quueued in the OS.
EXAMPLES
- Trace all block device I/O and print a summary line per I/O:
-
#
biosnoop
FIELDS
- TIME(s)
-
Time of the I/O completion, in seconds since the first I/O was seen.
- COMM
-
Cached process name, if present. This usually (but isn't guaranteed) to identify
the responsible process for the I/O.
- PID
-
Cached process ID, if present. This usually (but isn't guaranteed) to identify
the responsible process for the I/O.
- DISK
-
Disk device name.
- T
-
Type of I/O: R = read, W = write. This is a simplification.
- SECTOR
-
Device sector for the I/O.
- BYTES
-
Size of the I/O, in bytes.
- QUE(ms)
-
Time the I/O was queued in the OS before being issued to the device,
in milliseconds.
- LAT(ms)
-
Time for the I/O (latency) from the issue to the device, to its completion,
in milliseconds.
OVERHEAD
Since block device I/O usually has a relatively low frequency (< 10,000/s),
the overhead for this tool is expected to be negligible. For high IOPS storage
systems, test and quantify before use.
SOURCE
This is from bcc.
-
https://github.com/iovisor/bcc
Also look in the bcc distribution for a companion _examples.txt file containing
example usage, output, and commentary for this tool.
OS
Linux
STABILITY
Unstable - in development.
AUTHOR
Brendan Gregg
SEE ALSO
disksnoop(8), iostat(1)
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- REQUIREMENTS
-
- OPTIONS
-
- EXAMPLES
-
- FIELDS
-
- OVERHEAD
-
- SOURCE
-
- OS
-
- STABILITY
-
- AUTHOR
-
- SEE ALSO
-
This document was created by
man2html,
using the manual pages.
Time: 17:11:49 GMT, February 25, 2020