diff --git a/sos/report/plugins/vdo.py b/sos/report/plugins/vdo.py index f98af39f9..690c0406b 100644 --- a/sos/report/plugins/vdo.py +++ b/sos/report/plugins/vdo.py @@ -28,6 +28,18 @@ def setup(self): vdos = self.collect_cmd_output('vdo list --all') for vdo in vdos['output'].splitlines(): self.add_cmd_output(f"vdo status -n {vdo}") - self.add_cmd_output('vdostats --human-readable') + self.add_cmd_output([ + 'vdostats --human-readable', + 'vdostats --verbose' + ]) + vdo_cols = ('vdo_deduplication,vdo_index_state') + lvs_opts = ('--no-headings -a -o +') + lvm_vdos = self.collect_cmd_output(f"lvs {lvs_opts}{vdo_cols}") + for vdo in lvm_vdos['output'].splitlines(): + # we can find the pool and pool data maps in the output + # of lvs, in the column Volume type, marked as either 'd' or 'D' + if vdo.split()[2].startswith("D"): + vdo_path = f"{vdo.split()[1]}-{vdo.split()[0].strip('[]')}" + self.add_cmd_output(f"vdodumpconfig /dev/mapper/{vdo_path}") # vim set et ts=4 sw=4 :