File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -370,23 +370,28 @@ def get_sessions():
370370 plex_sessions = get_plex_sessions ()
371371
372372 for proc in psutil .process_iter ():
373- parent = None
374- if callable (proc .parent ):
375- parent = proc .parent ()
376- else :
377- parent = proc .parent
373+ parent_name = None
374+ try :
375+ if callable (proc .parent ):
376+ parent_name = proc .parent ().name ()
377+ else :
378+ parent_name = proc .parent .name
379+ except :
380+ continue
378381
379- if not parent or not hasattr ( parent , 'name' ) :
382+ if not parent_name :
380383 continue
381384
385+ pinfo = proc .as_dict (['name' , 'cmdline' ])
386+
382387 # Check the parent to make sure it is the "Plex Transcoder"
383- if proc . name == 'ssh' and 'plex' in parent . name .lower ():
384- cmdline = ' ' .join (proc . cmdline )
388+ if pinfo [ ' name' ] == 'ssh' and 'plex' in parent_name .lower ():
389+ cmdline = ' ' .join (pinfo [ ' cmdline' ] )
385390 m = PRT_ID_RE .search (cmdline )
386391 if m :
387392 session_id = re_get (SESSION_RE , cmdline )
388393 data = {
389- 'proc' : proc ,
394+ 'proc' : pinfo ,
390395 'plex' : plex_sessions .get (session_id , {}),
391396 'host' : {}
392397 }
@@ -401,7 +406,6 @@ def get_sessions():
401406 sessions [m .groups ()[0 ]] = data
402407 return sessions
403408
404-
405409def sessions ():
406410 if psutil is None :
407411 print "Missing required library 'psutil'. Try 'pip install psutil'."
You can’t perform that action at this time.
0 commit comments