NVME-OCP-INTERNAL-LOG(1)
π NAME π
hey bestie, welcome to nvme-ocp-internal-log(1) β the page that conditionally retrieves the 07h Telemetry Host-Initiated log and the C9h OCP Strings Log from an NVMe device or from a user-specified file path. Then it takes those retrieved logs and decodes them into the human-readable output format you asked for. lowkey iconic decoder-ring energy π
β¨ SYNOPSIS β¨
nvme [<global-options>] ocp internal-log <device>
[--telemetry-log=<file> | -l <file>]
[--string-log=<file> | -s <file>]
[--output-file=<file> | -f <file>]
[--data-area=<da> | -a <da>]
[--telemetry-type=<type> | -t <type>]
[--host-generate=<gen> | -g <gen>]
[--no-uuid | -n]
π¦ DESCRIPTION π¦
so here's the vibe, fr fr: this command conditionally retrieves the 07h Telemetry Host-Initiated log and the C9h OCP Strings Log from an NVMe device or from a user-specified file path. then it takes what it retrieved and decodes (or parses) it into the human-readable output format specified by you. π
Without --output-format, the report is written as JSON to <file>.json, or as normal text to <file>.txt when nvme-cli is built without json-c. no cap, that's the default situation π«Ά
The <device> parameter is mandatory and may be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1). main character parameter energy, literally π
β οΈ warning bestie: this will only work on OCP compliant devices supporting this feature. Results for any other device are undefined. we do not make up results for random devices, periodt π
On success it returns 0, error code otherwise. simple as that β¨
πΈ OPTIONS πΈ
-l <file>,--telemetry-log=<file>β File name to existing Telemetry Host- or Controller-Initiated raw binary data to be used. If no path is specified, a live retrieval of payload on<device>will be performed. π-s <file>,--string-log=<file>β File name to existing OCP String Log raw binary data to be used. If no path is specified, a live retrieval of payload on<device>will be performed. π¦-f <file>,--output-file=<file>β Filepath name used as the prefix for the telemetry and string log bin files along with the human-readable parsed output file. it's giving naming rights π-a <da>,--data-area=<da>β Retrieves the specific data area requested. Valid inputs are1,2,3, or4. If this option is not specified, the default value is1. pick your area, bestie β¨-t <type>,--telemetry-type=<type>β Set the telemetry type tohostorcontroller. With--telemetry-log, the type is detected from the Log Identifier of the provided log, and--telemetry-typeis not required. Otherwise, if this option is not specified, the default value ishost.host0andhost1are deprecated and will be removed in the next major version; usehostwith--host-generate=0in place ofhost0. not me reading the deprecation note out loud π-g <gen>,--host-generate=<gen>β If set to1, 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. If set to0, the controller shall not update this data before reading the log. Ignored with--telemetry-type=controller. If this option is not specified, the default value is1. π§-n,--no-uuidβ Do not try to automatically detect UUID index when retrieving the OCP String Log from<device>(default UUID index to0). leave the UUID detective work alone π
π GLOBAL OPTIONS π
The following options are defined at the top-level nvme command and are available to this subcommand:
--dry-runβ Print the command that would be executed, but do not actually execute it. peek first, run later π--no-ioctl-probingβ Disable probing for 64-bit IOCTL support. no probing today, thank you π«Ά--no-retriesβ Disable retry logic on transient errors. one shot, no reruns π-o <fmt>,--output-format=<fmt>β Set the reporting format tonormal,tabular,'json, orbinary. Only one output format may be used at a time. choose your fighter β--output-format-version=<version>β Select the output format version. Version1uses the original field naming, while version2(default) provides more consistent and script-friendly field names. Other versions are rejected. script-friendly is the moment π--quietβ Suppress informational messages. Errors are still reported, and--quietcancels any--verbosefor the library log level. shhh era π€«--set-options=<key=value>[,<key=value>...]β Set libnvme library options for this invocation. Supported keys areforce-4k,mi-probe-enabled,test-base-dirandtest-sysfs-dir. π οΈ--timeout=<ms>β Set the timeout for the command in milliseconds.infiniteor-1waits without a time limit (0xffffffff). no clock anxiety, unless you pick one β³-v,--verboseβ Increase the level of detail in the output. May be specified multiple times to further increase verbosity. say it louder for the people in the back π£
These options can also be set as machine-wide defaults in nvme-cli.conf(5). A command-line flag always overrides the file. rules are rules, bestie π
π EXAMPLES π
- Retrieve both OCP String Log and Telemetry Host-Initiated Log from device. Decode default data-area(s) and output to the default
./telemetry-log.json.
# nvme ocp internal-log /dev/nvme0
- Retrieve the OCP String Log and the existing Telemetry Host-Initiated data without having the controller capture new data. Decode default data-area(s) and output to the default
./telemetry-log.json.
# nvme ocp internal-log /dev/nvme0 --host-generate=0
- Retrieve Telemetry Host-Initiated data, reads in the OCP String Log locally. Decode default data-area(s) in default format.
# nvme ocp internal-log /dev/nvme0 --string-log=ocp_string_log.bin
--output-file=output_file.json
- Retrieve OCP String Log, reads in the Telemetry Host-Initiated Log locally. Decode data-areas 1 and 2, and output in json format.
# nvme ocp internal-log /dev/nvme0 --telemetry-log=host_telemetry.bin
--output-format=json --output-file=output_file.json --data-area=2
- Reads in both OCP String Log and Telemetry Host-Initiated Log locally. Decode data-areas 1 and 2, and output in normal text format.
# nvme ocp internal-log /dev/nvme0 --string-log=ocp_string_log.bin
--telemetry-log=host_telemetry.bin --output-format=normal
--output-file=output_file.txt --data-area=2
π NVME π
Part of the nvme-user suite. iconic, no notes π
okay that's the whole page, bestie π«Ά source: the nvme-user suite. the original footer only repeated the page label and gave no version or date, so we're not making one up β periodt π
π¦ 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