iowatcher1
Create visualizations from blktrace results
Usage
iowatcher [options]
[--]
[program
arguments ...]
Overview
iowatcher graphs the results of a blktrace run. It can graph the result of an existing blktrace, start a new blktrace, or start a new blktrace and a benchmark run. It can then create an image or movie of the IO from a given trace. iowatcher can produce either SVG files or movies in mp4 format (with ffmpeg) or ogg format (with png2theora).
Options
-
--help -
Print a brief usage summary.
-
-d, --device device -
Controls which device you are tracing. You can only trace one device at a time for now. It is sent directly to blktrace, and only needed when you are making a new trace.
-
-D, --blktrace-destination destination -
Destination for blktrace.
-
-p, --prog -
Run a program while blktrace is run. The program and its arguments must be specified after all other options. Note that this option previously required the program to be given as a single argument but it now tells
iowatcherto expect extra arguments which it should be run during the trace.
-
-- -
End option parsing. If
--progis specified, everything after--is the program to be run. This can be useful if the program name could otherwise be mistaken for an option.
-
-K, --keep-movie-svgs -
Keep the SVG files generated for movie mode.
-
-t, --trace path -
Specify the name of the file or directory in which blktrace output is located.
iowatcheruses a dump from blkparse, so this option tries to guess the name of the corresponding per-CPU blktrace data files if the dump file doesn't already exist. To add multiple traces to a given graph, you can specify--tracemore than once. If path is a directory,iowatcherwill use the name of the directory as the base name of the dump file and all trace files found inside the directory will be processed.
-
-l, --label label -
Sets a label in the graph for a trace file. The labels are added in the same order as the trace files.
-
-m, --movie [style] -
Create a movie. The file format depends on the extension used in the
-ofile option. If you specify an .ogv or .ogg extension, the result will be Ogg Theora video, if png2theora is available. If you use an .mp4 extension, the result will be an mp4 video if ffmpeg is available. You can use any other extension, but the end result will be an mp4. The accepted style values arespindlefor a circular disc-like effect (default) orrectfor a rectangular graph style.
-
-T, --title title -
Set a title to be placed at the top of the graph.
-
-o, --output file -
Output filename for the SVG image or video. The video format used will depend on the file name extension. See
--moviefor details.
-
-r, --rolling seconds -
Control the duration for the rolling average.
iowatchertries to smooth out bumpy graphs by averaging the current second with seconds from the past. Larger numbers here give you flatter graphs.
-
-h, --height height -
Set the height of each graph
-
-w, --width width -
Set the width of each graph
-
-c, --columns columns -
Number of columns in graph output
-
-x, --xzoom min:max -
Limit processed time range to min:max.
-
-y, --yzoom min:max -
Limit processed sectors to min:max.
-
-a, --io-plot-action action -
Plot action (one of Q, D, or C) in the IO graph.
-
-P, --per-process-io -
Distinguish between processes in the IO graph.
-
-O, --only-graph graph -
Add a single graph to the output (see section GRAPHS for options). By default all graphs are included. Use
-Oto generate only the required graphs.-Omay be used more than once.
-
-N, --no-graph type -
Remove a single graph from the output (see section GRAPHS for options). This option may be used more than once.
Graphs
Values accepted by the -O and -N options are:
io, tput, latency, queue_depth, iops, cpu-sys, cpu-io, cpu-irq, cpu-user, cpu-soft
Examples
Generate graph from the existing trace.dump:
# iowatcher -t trace
Skip the IO graph:
# iowatcher -t trace.dump -o trace.svg -N io
Only graph tput and latency:
# iowatcher -t trace.dump -o trace.svg -O tput -O latency
Generate a graph from two runs, and label them:
# iowatcher -t ext4.dump -t xfs.dump -l Ext4 -l XFS -o trace.svg
Run a fio benchmark and store the trace in trace.dump, add a title to the top, use /dev/sda for blktrace:
# iowatcher -d /dev/sda -t trace.dump -T 'Fio Benchmark' -p fio some_job_file
Make a movie from an existing trace:
# iowatcher -t trace --movie -o trace.mp4
Releases
5 releases since Debian 9 (Stretch); the text changed 1 time.