ZFCPDBF(8)
π ZFCPDBF β zfcp trace data sort/analyse tool β¨
okay bestie, so you know ZFCPDBF(8)? that's the manual page name β it lives in the System Manager's Manual, and the command is zfcpdbf, a zfcp trace data sort/analyse tool. she's an 8th-section girlie, very system-administration, very demure. let's get into it π
πΈ SYNOPSIS πΈ
zfcpdbf [OPTIONS] <adapter>
zfcpdbf {-h|-v}
literally that's the whole shape of it. options plus an adapter, or just a lil -h/-v and you're out. π
π¦ DESCRIPTION π¦
so zfcpdbf interprets the information from various logging and tracing sources β think zfcp-, qdio- and cio-trace records, plus system messages if they're available. it's giving detective energy fr fr π
with offline debug data β like the stuff collected by dbginfo.sh, or extracted from a Linux system dump with crash version 5.1.0 or later β zfcpdbf can run on any platform that has a suitable Perl language environment. no cap, any platform. π«Ά
now the compatibility tea, because this part matters:
- any
zfcpdbfsince version1.13.0works with debug data from any Linux kernel since version2.6.38. - recent
zfcpdbfversions paired with older kernel versions will show zeros or empty values for newer trace record fields that the old kernel didn't have yet. π - older
zfcpdbfversions paired with recent kernel versions just show the old trace record fields thatzfcpdbfalready knows about, and ignore any newer trace record fields of the kernel. π
for full exploitation, it is recommended to always use the latest version of zfcpdbf, no matter which kernel version the debug data comes from. periodt. π
β¨ OPTIONS β¨
-h,--helpβ print usage information, then exit. the classic "what does anything do" button π-v,--versionβ print version information, then exit. main character energy, she tells you who she is π-x <AREA[,AREA]>,--exclude=<AREA[,AREA]>β list of trace areas to exclude (defaultnone). blocklist behaviour, we love a boundary π«-i <AREA[,AREA]>,--include=<AREA[,AREA]>β list of trace areas to include (defaultall). allowlist behaviour, very inclusive of her π-z,--zfcp-onlyβ zfcp trace areas only. it's a short cut, lowkey the lazy-girl option and honestly? slay π-t <DIFF>,--timediff=<DIFF>β highlight requests with a round-trip processing time of<DIFF>or more. slow requests get the spotlight π₯-e,--def-errorβ do NOT show deferred error messages. note the capital NOT, bestie, it's the reverse of what you'd expect π-f,--forceβ force execution on a detected version mismatch. she's gonna do it anyway, might as well let her π«Ά-p <PATH>,--path=<PATH>β use directory<PATH>for the location of the trace records. point her at the evidence π-r <PATH>,--root=<PATH>β prepend<ROOT>to standard trace record location. same vibe, but a prefix. (yes the manual says<PATH>in the synopsis and<ROOT>in the description β that's just how she is, don't @ me) π§-m <ZONE>,--timezone=<ZONE>β set time zone for system message timestamps. timezone queen, she contains multitudes π
π PARAMETERS π
The trace areas
<AREA> may be REC, HBA, SAN, SCSI, QDIO, QDIO_SETUP, QDIO_ERROR, CIO_TRACE, CIO_MSG, CIO_CRW, KERNEL or MULTIPATH.
that's the whole menu, twelve of them, memorise them or don't (you can just scroll up, i'm not the police) π
The diff
<DIFF> is the value in seconds which has to be lapsed between sending the request and receiving its response. so: how long the round trip took. that's it, that's the number β±οΈ
The paths
<PATH> is specifying the location (directory) of trace records which were pulled from another system β e.g. pulled from a dump. ποΈ
<ROOT> is specifying a directory which has to be prepended to the standard location of the trace records, e.g. typically used in conjunction with the result of the dbginfo script.
<PATH>and<ROOT>are only useful if used on non-live systems, and therefore typically used by service- or development-staff. if you're on a live system, these are not your girls π
The zone
<ZONE> is a time zone value in the [+-][h]h[:mm] format. yes that's the exact bracket situation, copy it carefully bestie β¨
The adapter
<adapter> β aka busid β is specifying the host adapter of which the trace information should be processed.
and here's the cute little quality-of-life bit: if a 4-digit value is provided, it is automaitically extended to the correct format 0.0.xxxx. (yes, "automaitically" β that's how the original spells it, i'm not fixing her typo, it's part of the lore ππ) so you can be lazy and she'll format it for you. iconic.
π§ a lil sign-off π§
this whole vibe check comes to you courtesy of s390-tools, dated May 2022 β that's the source and version and date, all wrapped up with a bow π go sort some traces, bestie, you're gonna eat π β¨
π¦ where this page comes from
- opensuse-leap 16.0: s390-tools 2.44.1-160000.1.1 Β· MIT
- Copyright 2017 IBM Corp
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms