Skip to content

Commit b3e3791

Browse files
committed
updated nvme for doc
1 parent 51b39da commit b3e3791

File tree

1 file changed

+20
-11
lines changed

1 file changed

+20
-11
lines changed

nodescraper/plugins/inband/nvme/nvme_collector.py

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,19 @@ class NvmeCollector(InBandDataCollector[NvmeDataModel, None]):
3939
"""Collect NVMe details from the system."""
4040

4141
DATA_MODEL = NvmeDataModel
42+
CMD_LINUX = {
43+
"smart_log": "nvme smart-log {dev}",
44+
"error_log": "nvme error-log {dev} --log-entries=256",
45+
"id_ctrl": "nvme id-ctrl {dev}",
46+
"id_ns": "nvme id-ns {dev}{ns}",
47+
"fw_log": "nvme fw-log {dev}",
48+
"self_test_log": "nvme self-test-log {dev}",
49+
"get_log": "nvme get-log {dev} --log-id=6 --log-len=512",
50+
"telemetry_log": "nvme telemetry-log {dev} --output-file={dev}_{f_name}",
51+
}
52+
CMD_TEMPLATES = list(CMD_LINUX.values())
53+
54+
TELEMETRY_FILENAME = "telemetry_log.bin"
4255

4356
def collect_data(
4457
self,
@@ -71,25 +84,20 @@ def collect_data(
7184
return self.result, None
7285

7386
all_device_data = {}
74-
f_name = "telemetry_log.bin"
87+
f_name = self.TELEMETRY_FILENAME
7588

7689
for dev in nvme_devices:
7790
device_data = {}
78-
CMD = {
79-
"smart_log": f"nvme smart-log {dev}",
80-
"error_log": f"nvme error-log {dev} --log-entries=256",
81-
"id_ctrl": f"nvme id-ctrl {dev}",
82-
"id_ns": f"nvme id-ns {dev}n1",
83-
"fw_log": f"nvme fw-log {dev}",
84-
"self_test_log": f"nvme self-test-log {dev}",
85-
"get_log": f"nvme get-log {dev} --log-id=6 --log-len=512",
86-
"telemetry_log": f"nvme telemetry-log {dev} --output-file={dev}_{f_name}",
91+
ns_suffix = "n1"
92+
cmd_map = {
93+
k: v.format(dev=dev, ns=ns_suffix, f_name=f_name) for k, v in self.CMD_LINUX.items()
8794
}
8895

89-
for key, cmd in CMD.items():
96+
for key, cmd in cmd_map.items():
9097
res = self._run_sut_cmd(cmd, sudo=True)
9198
if "--output-file" in cmd:
9299
_ = self._read_sut_file(filename=f"{dev}_{f_name}", encoding=None)
100+
93101
if res.exit_code == 0:
94102
device_data[key] = res.stdout
95103
else:
@@ -128,6 +136,7 @@ def collect_data(
128136
self.result.status = ExecutionStatus.OK
129137
return self.result, nvme_data
130138
else:
139+
131140
self._log_event(
132141
category=EventCategory.SW_DRIVER,
133142
description="Failed to collect any NVMe data",

0 commit comments

Comments
 (0)