xfsdist.bt(8)
β¨ xfsdist.bt(8) β the XFS latency tea β¨
Hey bestie, this is the manual page for xfsdist.bt (manual name: xfsdist.bt, section 8) π Let me spill it!
π NAME
xfsdist.bt β Summarize XFS operation latency. Uses bpftrace/eBPF. β¨
π§ SYNOPSIS
xfsdist.bt
πΈ DESCRIPTION
okay so this tool summarizes the time (aka latency) spent in common XFS file operations: reads, writes, opens, and syncs π and it shows you all of it as a power-of-2 histogram π It uses an in-kernel eBPF map to store the histogram, which is lowkey so efficient π
Since this works by tracing the xfs_file_operations interface functions, it will need updating to match any changes to those functions. Not me being dramatic, it's just the truth π
Since this uses BPF, only the root user can use this tool π₯ no cap.
π REQUIREMENTS
You need CONFIG_BPF and bpftrace. That's the whole list, periodt β¨
π¦ EXAMPLES
Trace XFS operation time, and print a summary on Ctrl-C:
# xfsdist.bt
π FIELDS
- 0th β The operation name (shown in
"@[...]") gets printed before each I/O histogram π - 1st, 2nd β This is a range of latency, in microseconds (shown in
"[...)"set notation) π - 3rd β A column showing the count of operations in this range π
- 4th β This is an ASCII histogram representing the count column β¨
β οΈ OVERHEAD
Heads up bestie: this adds low-overhead instrumentation to these XFS operations, including reads and writes from the file system cache. Those reads and writes can be super frequent (it depends on the workload, eg, 1M/sec), and at that point the overhead of this tool may become noticeable π Measure and quantify before use.
π SOURCE
This is from bpftrace.
https://github.com/bpftrace/bpftrace
Also look in the bpftrace distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool π§
This is a bpftrace version of the bcc tool of the same name. The bcc tool may provide more options and customizations π«Ά
https://github.com/iovisor/bcc
π» OS
Linux π§
π§ͺ STABILITY
Unstable β still in development π
π AUTHOR
Brendan Gregg π
π SEE ALSO
biolatency.bt(8)π¦
Bye bestie, that's the whole tea from xfsdist.bt(8), straight from the USER COMMANDS section, dated 2018-09-08 πΈπ
π¦ where this page comes from
- alpine 3.24: bpftrace-tools-doc 0.26.1-r0 Β· Apache-2.0
- arch rolling: bpftrace 0.27.0-2 Β· Apache-2.0
- centos-stream 10: bpftrace 0.26.1-1.el10 Β· Apache-2.0
- centos-stream 9: bpftrace 0.26.1-1.el9 Β· ASL 2.0
- debian trixie: bpftrace 0.23.2-1 Β· Apache-2.0
- fedora 43: bpftrace 0.24.0-1.fc43 Β· Apache-2.0
- fedora 43: bpftrace 0.24.2-1.fc43 Β· Apache-2.0
- fedora 44: bpftrace 0.24.2-3.fc44 Β· Apache-2.0
- nixos 26.05: bpftrace 0.25.1
- nixpkgs unstable: bpftrace 0.27.1
- opensuse-leap 16.0: bpftrace-tools 0.23.5-160000.1.2 Β· Apache-2.0
- ubuntu questing: bpftrace 0.23.5-1ubuntu1 Β· Apache-2.0
- ubuntu resolute: bpftrace 0.25.0-1ubuntu1 Β· Apache-2.0
- ubuntu stonking: bpftrace 0.25.0-1ubuntu2 Β· Apache-2.0
- π girlified by anthropic/claude-haiku-5.5 on : a language model's rewrite of the original, under its terms