diff options
Diffstat (limited to 'docs/tutorial/tapes')
| -rw-r--r-- | docs/tutorial/tapes/01-launch.tape | 23 | ||||
| -rw-r--r-- | docs/tutorial/tapes/02-overview-tab.tape | 23 | ||||
| -rw-r--r-- | docs/tutorial/tapes/03-syscalls-tab.tape | 36 | ||||
| -rw-r--r-- | docs/tutorial/tapes/04-files-tab.tape | 32 | ||||
| -rw-r--r-- | docs/tutorial/tapes/05-processes-tab.tape | 30 | ||||
| -rw-r--r-- | docs/tutorial/tapes/06-latency-gaps-tab.tape | 22 | ||||
| -rw-r--r-- | docs/tutorial/tapes/07-stream-live.tape | 22 | ||||
| -rw-r--r-- | docs/tutorial/tapes/08-stream-pause-filter.tape | 46 | ||||
| -rw-r--r-- | docs/tutorial/tapes/09-stream-regex-search.tape | 40 | ||||
| -rw-r--r-- | docs/tutorial/tapes/10-stream-csv-export.tape | 28 | ||||
| -rw-r--r-- | docs/tutorial/tapes/11-pid-tid-probe.tape | 41 | ||||
| -rw-r--r-- | docs/tutorial/tapes/12-parquet-recording.tape | 28 | ||||
| -rw-r--r-- | docs/tutorial/tapes/13-tui-flamegraph.tape | 22 | ||||
| -rw-r--r-- | docs/tutorial/tapes/14-headless-modes.tape | 38 |
14 files changed, 431 insertions, 0 deletions
diff --git a/docs/tutorial/tapes/01-launch.tape b/docs/tutorial/tapes/01-launch.tape new file mode 100644 index 0000000..1e2b558 --- /dev/null +++ b/docs/tutorial/tapes/01-launch.tape @@ -0,0 +1,23 @@ +# 01-launch: cold start of ior. Shows the PID picker, then the default landing tab +# (Flamegraph) once Enter selects "All PIDs". +Output demo/assets/01-launch.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 4500ms +Screenshot demo/assets/screenshot-pidpicker.png +Sleep 1500ms +Enter +Sleep 5s +Screenshot demo/assets/screenshot-dashboard.png +Sleep 2s +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/02-overview-tab.tape b/docs/tutorial/tapes/02-overview-tab.tape new file mode 100644 index 0000000..a16a0b8 --- /dev/null +++ b/docs/tutorial/tapes/02-overview-tab.tape @@ -0,0 +1,23 @@ +# 02-overview-tab: dashboard Overview tab — sparkline, top syscalls, top paths fill in. +# Key 2 switches to Overview (key 1 is Flamegraph, the default landing tab). +Output demo/assets/02-overview-tab.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "2" +Sleep 6s +Screenshot demo/assets/screenshot-overview.png +Sleep 1s +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/03-syscalls-tab.tape b/docs/tutorial/tapes/03-syscalls-tab.tape new file mode 100644 index 0000000..376f632 --- /dev/null +++ b/docs/tutorial/tapes/03-syscalls-tab.tape @@ -0,0 +1,36 @@ +# 03-syscalls-tab: sortable syscalls table, j/k to scroll, s/S to sort/reverse-sort. +# Key 3 switches to Syscalls. +Output demo/assets/03-syscalls-tab.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "3" +Sleep 3s +Type "j" +Sleep 400ms +Type "j" +Sleep 400ms +Type "j" +Sleep 800ms +Type "k" +Sleep 600ms +Right +Sleep 600ms +Type "s" +Sleep 1500ms +Type "S" +Sleep 2s +Screenshot demo/assets/screenshot-syscalls.png +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/04-files-tab.tape b/docs/tutorial/tapes/04-files-tab.tape new file mode 100644 index 0000000..49adfee --- /dev/null +++ b/docs/tutorial/tapes/04-files-tab.tape @@ -0,0 +1,32 @@ +# 04-files-tab: files tab plus directory-grouped view toggle (`d`). +# Key 4 switches to Files. +Output demo/assets/04-files-tab.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "4" +Sleep 3s +Type "j" +Sleep 400ms +Type "j" +Sleep 400ms +Type "j" +Sleep 800ms +Type "d" +Sleep 3s +Screenshot demo/assets/screenshot-files-grouped.png +Type "d" +Sleep 2s +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/05-processes-tab.tape b/docs/tutorial/tapes/05-processes-tab.tape new file mode 100644 index 0000000..ad5f64e --- /dev/null +++ b/docs/tutorial/tapes/05-processes-tab.tape @@ -0,0 +1,30 @@ +# 05-processes-tab: processes tab, scroll, and reverse-sort. +# Key 5 switches to Processes. +Output demo/assets/05-processes-tab.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "5" +Sleep 3s +Type "j" +Sleep 400ms +Type "j" +Sleep 400ms +Type "j" +Sleep 800ms +Type "S" +Sleep 2s +Screenshot demo/assets/screenshot-processes.png +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/06-latency-gaps-tab.tape b/docs/tutorial/tapes/06-latency-gaps-tab.tape new file mode 100644 index 0000000..b19ae58 --- /dev/null +++ b/docs/tutorial/tapes/06-latency-gaps-tab.tape @@ -0,0 +1,22 @@ +# 06-latency-gaps-tab: latency + inter-syscall gap histograms (driven by dd writes). +# Key 6 switches to Latency. +Output demo/assets/06-latency-gaps-tab.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "6" +Sleep 8s +Screenshot demo/assets/screenshot-latency.png +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/07-stream-live.tape b/docs/tutorial/tapes/07-stream-live.tape new file mode 100644 index 0000000..9d7ad4f --- /dev/null +++ b/docs/tutorial/tapes/07-stream-live.tape @@ -0,0 +1,22 @@ +# 07-stream-live: stream tab live-tailing rows. +# Key 7 switches to Stream. +Output demo/assets/07-stream-live.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "7" +Sleep 6s +Screenshot demo/assets/screenshot-stream-live.png +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/08-stream-pause-filter.tape b/docs/tutorial/tapes/08-stream-pause-filter.tape new file mode 100644 index 0000000..416830c --- /dev/null +++ b/docs/tutorial/tapes/08-stream-pause-filter.tape @@ -0,0 +1,46 @@ +# 08-stream-pause-filter: pause stream, navigate cells, push two filters onto the stack, undo with Esc. +# Key 7 switches to Stream. +Output demo/assets/08-stream-pause-filter.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "7" +Sleep 4s +Space +Sleep 1s +Down +Sleep 300ms +Down +Sleep 300ms +Down +Sleep 800ms +Right +Sleep 500ms +Right +Sleep 500ms +Enter +Sleep 1500ms +Down +Sleep 400ms +Right +Sleep 400ms +Enter +Sleep 2s +Screenshot demo/assets/screenshot-stream-filtered.png +Escape +Sleep 1s +Escape +Sleep 1500ms +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/09-stream-regex-search.tape b/docs/tutorial/tapes/09-stream-regex-search.tape new file mode 100644 index 0000000..b643740 --- /dev/null +++ b/docs/tutorial/tapes/09-stream-regex-search.tape @@ -0,0 +1,40 @@ +# 09-stream-regex-search: regex search forward (/), n to advance, ? for backward. +# Key 7 switches to Stream. +Output demo/assets/09-stream-regex-search.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "7" +Sleep 4s +Space +Sleep 1s +Type "/" +Sleep 600ms +Type "openat" +Sleep 700ms +Enter +Sleep 1500ms +Type "n" +Sleep 800ms +Type "n" +Sleep 800ms +Screenshot demo/assets/screenshot-stream-search.png +Type "?" +Sleep 600ms +Type "stat" +Sleep 700ms +Enter +Sleep 1500ms +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/10-stream-csv-export.tape b/docs/tutorial/tapes/10-stream-csv-export.tape new file mode 100644 index 0000000..c1f4935 --- /dev/null +++ b/docs/tutorial/tapes/10-stream-csv-export.tape @@ -0,0 +1,28 @@ +# 10-stream-csv-export: 'e' to export current filtered stream snapshot, then ls the CSV produced. +# Key 7 switches to Stream. +Output demo/assets/10-stream-csv-export.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "7" +Sleep 4s +Type "e" +Sleep 2s +Screenshot demo/assets/screenshot-stream-export.png +Sleep 1s +Type "q" +Sleep 1s +Type "ls -lh ior-stream-*.csv" +Enter +Sleep 2s diff --git a/docs/tutorial/tapes/11-pid-tid-probe.tape b/docs/tutorial/tapes/11-pid-tid-probe.tape new file mode 100644 index 0000000..caccc48 --- /dev/null +++ b/docs/tutorial/tapes/11-pid-tid-probe.tape @@ -0,0 +1,41 @@ +# 11-pid-tid-probe: re-open PID picker (p), TID picker (t), probe toggle dialog (o). +Output demo/assets/11-pid-tid-probe.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "p" +Sleep 2s +Down +Sleep 400ms +Down +Sleep 400ms +Screenshot demo/assets/screenshot-pidpicker-open.png +Escape +Sleep 1s +Type "t" +Sleep 2s +Screenshot demo/assets/screenshot-tidpicker.png +Escape +Sleep 1s +Type "o" +Sleep 2s +Down +Sleep 400ms +Down +Sleep 400ms +Screenshot demo/assets/screenshot-probes.png +Escape +Sleep 1s +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/12-parquet-recording.tape b/docs/tutorial/tapes/12-parquet-recording.tape new file mode 100644 index 0000000..c6f3399 --- /dev/null +++ b/docs/tutorial/tapes/12-parquet-recording.tape @@ -0,0 +1,28 @@ +# 12-parquet-recording: start parquet recording (R), accept default filename (Enter), dwell, stop (R), exit, ls the file. +Output demo/assets/12-parquet-recording.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior" +Enter +Sleep 5s +Enter +Sleep 4s +Type "R" +Sleep 1500ms +Enter +Sleep 4s +Screenshot demo/assets/screenshot-recording-active.png +Type "R" +Sleep 1500ms +Type "q" +Sleep 1s +Type "ls -lh ior-recording-*.parquet" +Enter +Sleep 2s diff --git a/docs/tutorial/tapes/13-tui-flamegraph.tape b/docs/tutorial/tapes/13-tui-flamegraph.tape new file mode 100644 index 0000000..7572159 --- /dev/null +++ b/docs/tutorial/tapes/13-tui-flamegraph.tape @@ -0,0 +1,22 @@ +# 13-tui-flamegraph: in-TUI flamegraph view. The default landing tab (key `1`) is the +# live flamegraph. Workload running in the background drives real frame data. +# `-fields` and `-count` let you reshape stack ordering and the size metric. +Output demo/assets/13-tui-flamegraph.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "sudo -n /home/paul/git/ior/ior -fields comm,path,tracepoint -count count" +Enter +Sleep 5s +Enter +Sleep 8s +Screenshot demo/assets/screenshot-flamegraph.png +Sleep 2s +Type "q" +Sleep 1s diff --git a/docs/tutorial/tapes/14-headless-modes.tape b/docs/tutorial/tapes/14-headless-modes.tape new file mode 100644 index 0000000..ce894f6 --- /dev/null +++ b/docs/tutorial/tapes/14-headless-modes.tape @@ -0,0 +1,38 @@ +# 14-headless-modes: all three headless flows in one tape — -flamegraph -name (.ior.zst), +# -parquet (streaming rows), -plain (CSV to stdout). Each capped with -duration so the demo terminates. +Output demo/assets/14-headless-modes.gif +Set Shell "bash" +Set Padding 20 + +Hide +Type "cd $(mktemp -d -t ior-demo-XXXX) && clear" +Enter +Sleep 300ms +Show + +Type "# 1) Aggregated native trace artifact (.ior.zst)" +Enter +Sleep 800ms +Type "sudo -n /home/paul/git/ior/ior -flamegraph -name demo-trace -duration 5" +Enter +Sleep 7s +Type "ls -lh demo-trace*.ior.zst" +Enter +Sleep 2s + +Type "# 2) Per-row streaming Parquet" +Enter +Sleep 800ms +Type "sudo -n /home/paul/git/ior/ior -parquet demo.parquet -duration 5" +Enter +Sleep 7s +Type "ls -lh demo.parquet" +Enter +Sleep 2s + +Type "# 3) Plain CSV to stdout (head only)" +Enter +Sleep 800ms +Type "sudo -n /home/paul/git/ior/ior -plain -duration 3 2>/dev/null | head -n 8" +Enter +Sleep 6s |
