NVME-LOG-TELEMETRY(1)
πΎ NVME-LOG-TELEMETRY(1) β the nvme manual, bestie edition β¨
okay so you're looking at nvme-log-telemetry from the NVMe Manual, and honestly? she's a baddie. let's get into it π
πΈ NAME πΈ
nvme-log-telemetry β grabs a Telemetry Host-Initiated log page off an NVMe device. that's the whole vibe. π
β¨ SYNOPSIS β¨
nvme [<global-options>] log telemetry <device>
[--output-file=<file> | -O <file>]
[--host-generate=<gen> | -g <gen>]
π¦ DESCRIPTION π¦
so what she does: she retrieves a Telemetry Host-Initiated log page from an NVMe device and hands you back the returned structure. iconic behavior, no notes. π«Ά
the <device> parameter is mandatory, bestie β not optional, not vibes-based. and it can be either:
- the NVMe character device, like
/dev/nvme0π - or a namespace block device, like
/dev/nvme0n1π
π heads up: on success, the returned log structure comes back in raw binary format only, and that's only with the --output-file option β which is mandatory. so like, don't forget it. fr fr.
π OPTIONS π
-O <file>,--output-file=<file>β the file name where the raw binary data gets saved. this one's the main character, you literally need it. π-g <gen>,--host-generate=<gen>β set this to1and the controller shall capture the Telemetry Host-Initiated data representing the internal state of the controller at the time the associated Get Log Page command is processed. set it to0and the controller shall not update this data. simple as that β¨-d <da>,--data-area=<da>β retrieves the specific data area you asked for. valid inputs are1,2,3,4. if you don't specify this option, the default value is3β because data area4may not be supported. protective queen behavior honestly π§
β GLOBAL OPTIONS β
these are defined up at the top-level nvme command and guess what β they're available to this subcommand too. generous icons. π
--dry-runβ prints the command that would be executed, but does not actually execute it. all the dress rehearsal, none of the commitment π--no-ioctl-probingβ disables probing for 64-bit IOCTL support.--no-retriesβ disables retry logic on transient errors. one shot, one opportunity.-o <fmt>,--output-format=<fmt>β sets the reporting format tonormal,tabular,'json, orbinary. only one output format may be used at a time β pick a lane, bestie π--output-format-version=<version>β selects the output format version. version 1 uses the original field naming, while version 2 (the default) provides more consistent and script-friendly field names. other versions are rejected. not negotiable, periodt. π--quietβ suppresses informational messages. errors are still reported, and--quietcancels any--verbosefor the library log level. shhh π€«--set-options=<key=value>[,<key=value>...]β sets libnvme library options for this invocation. supported keys areforce-4k,mi-probe-enabled,test-base-dirandtest-sysfs-dir. mix and match, she contains multitudes πΈ--timeout=<ms>β sets the timeout for the command in milliseconds.infiniteor-1waits without a time limit (0xffffffff). patience is a virtue, allegedly π§-v,--verboseβ increases the level of detail in the output. may be specified multiple times to further increase verbosity. stack it like it's a combo π₯
also!! these options can be set as machine-wide defaults in nvme-cli.conf(5). a command-line flag always overrides the file. the flag wins, every time. π
π EXAMPLES π
- retrieve Telemetry Host-Initiated data to
telemetry_log.binβ look at her go:
# nvme log telemetry /dev/nvme0 --output-file=telemetry_log.bin
π NVME π
part of the nvme-user suite. she runs with a whole crew. π
and that's the whole page, bestie β go forth and log your telemetry π¦
sign-off szn: this gem is from the NVMe manual set, part of the nvme-user suite, dated 10/30/2026 β mwah, take care of her πβ¨
π¦ where this page comes from
- arch rolling: nvme-cli 3.2-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms