NVME-SOLIDIGM-PARS(1)

πŸ¦‹ NVME-SOLIDIGM-PARS(1) β€” bestie edition πŸ¦‹

okay so this is from the NVMe Manual, and the command we're hyping up today is nvme-solidigm-parse-telemetry-log πŸ’– yes that's a long name, yes she's worth it, stay with me.


✨ NAME ✨

nvme-solidigm-parse-telemetry-log β€” parse and display the Solidigm Telemetry log. that's it, that's the job, and she does it flawlessly πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

nvme [<global-options>] solidigm parse-telemetry-log <device> [OPTIONS]

literally the whole vibe in one line, no cap ✨


🌸 DESCRIPTION 🌸

So what she does is: retrieves, parses, and displays the Telemetry log for the given Solidigm NVMe device. that's the whole pipeline, icon behavior only πŸ‘‘

This command gives you detailed info about the device's telemetry data, which is genuinely useful for diagnostics and performance analysis. like, if your drive is acting sus, this is where the receipts live fr fr πŸ”₯

The <device> parameter is mandatory β€” you cannot skip it, she will not let you. and it can be either:

  • the NVMe character device (ex: /dev/nvme0), or
  • a namespace block device (ex: /dev/nvme0n1) 🫢

πŸ’… OPTIONS πŸ’…

okay here's the full menu, every single one, no skips, we don't do that here πŸ“

  • -g <num>, --host-generate=<num> β€” controls when to generate a new host-initiated report. default value 1 generates a new host-initiated report, and value 0 causes retrieval of an existing log instead. valid values are 0 and 1. that's it, binary choice, pick your fighter πŸ’€
  • -c, --controller-init β€” gather the report generated by the controller. different flavor of report, same slay ✨
  • -d <num>, --data-area=<num> β€” pick which telemetry data area to report. default is 1, or 3 if a config file is specified. valid options are 1, 2, 3, 4. lowkey the config file changes your default, so watch out for that πŸ‘€
  • -j <file>, --config-file=<file> β€” specify a JSON configuration file for custom parsing of the telemetry log. yes bestie, you get to customize 🌈
  • -s <file>, --source-file=<file> β€” specifies a binary file containing a telemetry log dump to parse instead of retrieving the log from a device. and heads up: when this option is used, no device argument should be provided. so don't be out here passing both, that's not the move πŸ™ˆ

πŸ‘‘ GLOBAL OPTIONS πŸ‘‘

these ones are defined at the top-level nvme command and are available to this subcommand too β€” so they're like, the main character options that every subcommand gets to borrow πŸ’œ

  • --dry-run β€” print the command that would be executed, but do not actually execute it. all the info, none of the consequences πŸ”₯
  • --no-ioctl-probing β€” disable probing for 64-bit IOCTL support.
  • --no-retries β€” disable retry logic on transient errors. one shot, one opportunity πŸ’€
  • -o <fmt>, --output-format=<fmt> β€” set the reporting format to normal, tabular, 'json, or binary. only one output format may be used at a time, so don't get greedy πŸŽ€
  • --output-format-version=<version> β€” select the output format version. version 1 uses the original field naming, while version 2 (default) provides more consistent and script-friendly field names. other versions are rejected. periodt, no custom versions for you ✨
  • --quiet β€” suppress informational messages. errors are still reported, and --quiet cancels any --verbose for the library log level. so yeah, she shushes but she still tells you when something's actually wrong 🫢
  • --set-options=<key=value>[,<key=value>...] β€” set libnvme library options for this invocation. supported keys are force-4k, mi-probe-enabled, test-base-dir and test-sysfs-dir. yes, it's a whole comma-separated situation 🌸
  • --timeout=<ms> β€” set the timeout for the command in milliseconds. infinite or -1 waits without a time limit (0xffffffff). so if you're the patient type, she'll wait with you 😭
  • -v, --verbose β€” increase the level of detail in the output. may be specified multiple times to further increase verbosity. stack it, girl, go off πŸ’…
also: these options can also be set as machine-wide defaults in nvme-cli.conf(5). a command-line flag always overrides the file β€” the flag wins, always, that's the rule πŸ‘‘

🧚 EXAMPLES 🧚

okay live demonstration time, watch and learn bestie πŸ“

  • retrieve and parse the telemetry log with default options:
# nvme solidigm parse-telemetry-log /dev/nvme0
  • retrieve an existing telemetry log without generating a new one:
# nvme solidigm parse-telemetry-log /dev/nvme0 -g 0
  • parse a specific data area of the telemetry log:
# nvme solidigm parse-telemetry-log /dev/nvme0 -d 2
  • use a custom configuration file for parsing:
# nvme solidigm parse-telemetry-log /dev/nvme0 -j config.json
  • parse a telemetry log from a binary file:
# nvme solidigm parse-telemetry-log -s telemetry_dump.bin

(see how there's no device in that last one? yeah, that's the -s rule in action, i told you πŸŽ€)


⭐ OUTPUT ⭐

the command outputs the parsed telemetry log in JSON format to stdout. clean, readable, script-friendly, we love to see it πŸ’–


🌈 NVME 🌈

part of the nvme-cli suite β€” she's got family, she's got lore, she's not alone in this 🫢


that's the whole page bestie, you're officially telemetry-literate πŸ’…βœ¨

sign-off szn: this gem comes from the NVMe crew, dated 10/30/2026 β€” and the original title block was NVME-SOLIDIGM-PARS(1) at the top and bottom, but i already gave you the good version πŸŽ€ mwah, go parse something πŸ’œ

πŸ“¦ where this page comes from