I am running taurus on a system where user programs are not allowed to access /sys/block. The result is that bzt crashes with a PermissionError exception. This occurs under Android and some cloud providers.
The offending code is in the __get_disk_counters function in montitoring.py. The current code actually catches RuntimeError. If I simply change it to catch Exception, bzt seems to work fine.
def __get_disk_counters(self):
counters = None
try:
counters = psutil.disk_io_counters()
except RuntimeError as exc: # change to Exception here
self.log.debug("Failed to get disk metrics: %s", exc)
if counters is None:
counters = psutil._common.sdiskio(0, 0, 0, 0, 0, 0) # pylint: disable=protected-access
# noinspection PyProtectedMember
return counters
I am running taurus on a system where user programs are not allowed to access /sys/block. The result is that bzt crashes with a PermissionError exception. This occurs under Android and some cloud providers.
The offending code is in the __get_disk_counters function in montitoring.py. The current code actually catches RuntimeError. If I simply change it to catch Exception, bzt seems to work fine.