in kif.py [0:0]
def __init__(self, pid=None):
if pid is None:
# This instance will aggregate values across multiple processes,
# so we'll zero the numerics.
self.mem = 0
self.mempct = 0
self.fds = 0
self.age = 0
self.state = '' # can't aggregate state, but needs a value
self.conns = 0
self.conns_local = 0
self.command = '(root)'
return
proc = psutil.Process(pid)
self.mem = proc.memory_info().rss
self.mempct = proc.memory_percent()
self.fds = proc.num_fds()
self.age = time.time() - proc.create_time()
self.state = proc.status()
self.command = " ".join(proc.cmdline())
self.conns = len(proc.connections())
self.conns_local = 0
for connection in proc.connections():
if connection.raddr and connection.raddr[0]:
if RE_LOCAL_IP.match(connection.raddr[0]) \
or connection.raddr[0] == '::1':
self.conns_local += 1