Merge "Remove psutil 1.x compat wrapping"

This commit is contained in:
Jenkins 2017-10-08 17:34:40 +00:00 committed by Gerrit Code Review
commit 07afa7df4a
1 changed files with 11 additions and 17 deletions

View File

@ -18,13 +18,9 @@ This module defines a class representing a process,
potentially with subprocesses. potentially with subprocesses.
""" """
import psutil
import oslo_reports.models.with_default_views as mwdv import oslo_reports.models.with_default_views as mwdv
import oslo_reports.views.text.process as text_views import oslo_reports.views.text.process as text_views
PS1 = psutil.version_info[0] == 1
class ProcessModel(mwdv.ModelWithDefaultViews): class ProcessModel(mwdv.ModelWithDefaultViews):
"""A Process Model """A Process Model
@ -40,13 +36,12 @@ class ProcessModel(mwdv.ModelWithDefaultViews):
text_view=text_views.ProcessView()) text_view=text_views.ProcessView())
self['pid'] = process.pid self['pid'] = process.pid
self['parent_pid'] = (process.ppid if PS1 else process.ppid()) self['parent_pid'] = process.ppid()
if hasattr(process, 'uids'): if hasattr(process, 'uids'):
self['uids'] = { self['uids'] = {
'real': (process.uids.real if PS1 else process.uids().real), 'real': process.uids().real,
'effective': (process.uids.effective if PS1 'effective': process.uids().effective,
else process.uids().effective), 'saved': process.uids().saved
'saved': (process.uids.saved if PS1 else process.uids().saved)
} }
else: else:
self['uids'] = {'real': None, self['uids'] = {'real': None,
@ -55,19 +50,18 @@ class ProcessModel(mwdv.ModelWithDefaultViews):
if hasattr(process, 'gids'): if hasattr(process, 'gids'):
self['gids'] = { self['gids'] = {
'real': (process.gids.real if PS1 else process.gids().real), 'real': process.gids().real,
'effective': (process.gids.effective if PS1 'effective': process.gids().effective,
else process.gids().effective), 'saved': process.gids().saved
'saved': (process.gids.saved if PS1 else process.gids().saved)
} }
else: else:
self['gids'] = {'real': None, self['gids'] = {'real': None,
'effective': None, 'effective': None,
'saved': None} 'saved': None}
self['username'] = process.username if PS1 else process.username() self['username'] = process.username()
self['command'] = process.cmdline if PS1 else process.cmdline() self['command'] = process.cmdline()
self['state'] = process.status if PS1 else process.status() self['state'] = process.status()
children = process.get_children() if PS1 else process.children() children = process.children()
self['children'] = [ProcessModel(pr) for pr in children] self['children'] = [ProcessModel(pr) for pr in children]