Viewing file: nvme.py (1.53 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# This file is part of the sos project: https://github.com/sosreport/sos # # This copyrighted material is made available to anyone wishing to use, # modify, copy, or redistribute it subject to the terms and conditions of # version 2 of the GNU General Public License. # # See the LICENSE file in the source distribution for further information.
from sos.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin import os
class Nvme(Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin): """Collect config and system information about NVMe devices"""
plugin_name = "nvme" packages = ('nvme-cli',)
def get_nvme_devices(self): sys_block = os.listdir('/sys/block/') return [dev for dev in sys_block if dev.startswith('nvme')]
def setup(self): self.add_copy_spec("/etc/nvme/discovery.conf") self.add_cmd_output([ "nvme list", "nvme list-subsys", ]) for dev in self.get_nvme_devices(): # runs nvme-cli commands self.add_cmd_output([ "smartctl --all /dev/%s" % dev, "nvme list-ns /dev/%s" % dev, "nvme fw-log /dev/%s" % dev, "nvme list-ctrl /dev/%s" % dev, "nvme id-ctrl -H /dev/%s" % dev, "nvme id-ns -H /dev/%s" % dev, "nvme smart-log /dev/%s" % dev, "nvme error-log /dev/%s" % dev, "nvme show-regs /dev/%s" % dev, "nvme get-ns-id /dev/%s" % dev ])
# vim: set et ts=4 sw=4 :
|