提交 17d6318e 编写于 作者: N nicolargo

Manage catch error on old PsUtil version

上级 afb2f0de
...@@ -29,6 +29,12 @@ from glances.logger import logger ...@@ -29,6 +29,12 @@ from glances.logger import logger
import psutil import psutil
# Workaround for old PsUtil version
if hasattr(psutil, 'WindowsError'):
PsUtilWindowsError = psutil.WindowsError
else:
PsUtilWindowsError = None
def is_kernel_thread(proc): def is_kernel_thread(proc):
"""Return True if proc is a kernel thread, False instead.""" """Return True if proc is a kernel thread, False instead."""
...@@ -269,7 +275,7 @@ class GlancesProcesses(object): ...@@ -269,7 +275,7 @@ class GlancesProcesses(object):
# Patch for issue #391 # Patch for issue #391
try: try:
self.cmdline_cache[procstat['pid']] = proc.cmdline() self.cmdline_cache[procstat['pid']] = proc.cmdline()
except (AttributeError, UnicodeDecodeError, psutil.AccessDenied, psutil.NoSuchProcess, psutil.WindowsError): except (AttributeError, UnicodeDecodeError, psutil.AccessDenied, psutil.NoSuchProcess, PsUtilWindowsError):
self.cmdline_cache[procstat['pid']] = "" self.cmdline_cache[procstat['pid']] = ""
procstat['cmdline'] = self.cmdline_cache[procstat['pid']] procstat['cmdline'] = self.cmdline_cache[procstat['pid']]
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册