%PDF- %PDF-
Direktori : /lib/python3/dist-packages/sos/report/plugins/ |
Current File : //lib/python3/dist-packages/sos/report/plugins/pmem.py |
# 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.report.plugins import Plugin, IndependentPlugin class pmem(Plugin, IndependentPlugin): """This plugin collects data from Persistent Memory devices, commonly referred to as NVDIMM's or Storage Class Memory (SCM) """ short_desc = 'Persistent Memory Devices' plugin_name = 'pmem' profiles = ('storage', 'hardware', 'memory') # Utilities can be installed by package or self compiled packages = ('ndctl', 'daxctl', 'ipmctl') commands = ('ndctl', 'daxctl', 'ipmctl') def setup(self): # Copy the contents of the /etc/ndctl & /var/log/ipmctl # directories and /etc/ipmctl.conf file self.add_copy_spec([ "/etc/ndctl", "/etc/ipmctl.conf", "/var/log/ipmctl" ]) """ Use the ndctl-list(1) command to collect: -i Include idle (not enabled) devices in the listing -vvv Increase verbosity of the output -B Include bus info in the listing -D Include dimm info in the listing -F Include dimm firmware info in the listing -H Include dimm health info in the listing -M Include media errors (badblocks) in the listing -N Include namespace info in the listing -R Include region info in the listing -X Include device-dax info in the listing Output is JSON formatted """ self.add_cmd_output([ "ndctl --version", "ndctl list -vvv", "ndctl list -iBDFHMNRX", "ndctl read-labels -j all" ]) """ Use the daxctl-list(1) command to collect: -i Include idle (not enabled / zero-sized) devices in the listing -D Include device-dax instance info in the listing -R Include region info in the listing Output is JSON formatted """ self.add_cmd_output([ "daxctl list", "daxctl list -iDR" ]) """ Use the ipmctl(1) command to collect data from Intel(R) Optane(TM) Persistent Memory Modules. """ self.add_cmd_output([ "ipmctl version", "ipmctl show -cap", "ipmctl show -cel", "ipmctl show -dimm", "ipmctl show -a -dimm", "ipmctl show -dimm -pcd", "ipmctl show -dimm -performance", "ipmctl show -error Thermal -dimm", "ipmctl show -error Media -dimm", "ipmctl show -firmware", "ipmctl show -goal", "ipmctl show -memoryresources", "ipmctl show -performance", "ipmctl show -preferences", "ipmctl show -region", "ipmctl show -sensor", "ipmctl show -a -sensor", "ipmctl show -socket", "ipmctl show -system", "ipmctl show -system -capabilities", "ipmctl show -a -system -capabilities", "ipmctl show -topology", "ipmctl show -a -topology" ]) # vim: set et ts=4 sw=4 :