def get_session_profile(sid, src=None): if not src: src = "%s/%s" % (os.getcwd(), sid) if os.path.exists(src): # we have profiles locally profiles = glob.glob("%s/*.prof" % src) profiles += glob.glob("%s/*/*.prof" % src) else: # need to fetch profiles from .session import fetch_profiles profiles = fetch_profiles(sid=sid, skip_existing=True) # filter out some frequent, but uninteresting events efilter = { ru.EVENT: ['publish', 'work start', 'work done'], ru.MSG: ['update unit state', 'unit update pushed', 'bulked', 'bulk size'] } profiles = ru.read_profiles(profiles, sid, efilter=efilter) profile, accuracy = ru.combine_profiles(profiles) profile = ru.clean_profile(profile, sid, rps.FINAL, rps.CANCELED) hostmap = get_hostmap(profile) if not hostmap: # FIXME: legacy host notation - deprecated hostmap = get_hostmap_deprecated(profiles) return profile, accuracy, hostmap
def get_session_profile(sid, src=None): if not src: src = "%s/%s" % (os.getcwd(), sid) if os.path.exists(src): # we have profiles locally profiles = glob.glob("%s/*.prof" % src) profiles += glob.glob("%s/*/*.prof" % src) else: # need to fetch profiles from .session import fetch_profiles profiles = fetch_profiles(sid=sid, skip_existing=True) # filter out some frequent, but uninteresting events efilter = {ru.EVENT : ['publish', 'work start', 'work done'], ru.MSG : ['update unit state', 'unit update pushed', 'bulked', 'bulk size'] } profiles = ru.read_profiles(profiles, sid, efilter=efilter) profile, accuracy = ru.combine_profiles(profiles) profile = ru.clean_profile(profile, sid, rps.FINAL, rps.CANCELED) hostmap = get_hostmap(profile) if not hostmap: # FIXME: legacy host notation - deprecated hostmap = get_hostmap_deprecated(profiles) return profile, accuracy, hostmap
def get_session_profile(sid, src=None): if not src: src = "%s/%s" % (os.getcwd(), sid) if os.path.exists(src): # we have profiles locally profiles = glob.glob("%s/*.prof" % src) profiles += glob.glob("%s/*/*.prof" % src) else: # need to fetch profiles from .session import fetch_profiles profiles = fetch_profiles(sid=sid, skip_existing=True) # filter out some frequent, but uninteresting events efilter = { ru.EVENT: [ # 'get', 'publish', 'schedule_skip', 'schedule_fail', 'staging_stderr_start', 'staging_stderr_stop', 'staging_stdout_start', 'staging_stdout_stop', 'staging_uprof_start', 'staging_uprof_stop', 'update_pushed', ] } profiles = ru.read_profiles(profiles, sid, efilter=efilter) profile, accuracy = ru.combine_profiles(profiles) profile = ru.clean_profile(profile, sid, s.FINAL, s.CANCELED) hostmap = get_hostmap(profile) if not hostmap: # FIXME: legacy host notation - deprecated hostmap = get_hostmap_deprecated(profiles) return profile, accuracy, hostmap
def get_session_profile(sid, src=None): if not src: src = os.getcwd() if os.path.exists(src): # EnTK profiles are always on localhost profiles = glob.glob("%s/*.prof" % (src)) profiles += glob.glob("%s/*/*.prof" % (src)) else: profiles = glob.glob("./%s/*.prof" % (sid)) profiles += glob.glob("./%s/*/*.prof" % (sid)) if not profiles: raise EnTKError('No profiles found at %s' % src) try: profiles = ru.read_profiles(profiles=profiles, sid=sid) prof, acc = ru.combine_profiles(profiles) prof = ru.clean_profile(prof, sid=sid, state_final=res.FINAL, state_canceled=res.CANCELED) hostmap = get_hostmap(prof) if not hostmap: # FIXME: legacy host notation - deprecated hostmap = get_hostmap_deprecated(profiles) return prof, acc, hostmap except Exception as ex: # Push the exception raised by child functions print(traceback.format_exc()) raise EnTKError('Error: %s' % ex)
def get_session_profile(sid, src=None): if not src: src = os.getcwd() if os.path.exists(src): # EnTK profiles are always on localhost profiles = glob.glob("%s/%s/*.prof" % (src, sid)) else: raise EnTKError('%s/%s does not exist' % (src, sid)) if not profiles: raise EnTKError('No profiles found at %s' % src) try: profiles = ru.read_profiles(profiles=profiles, sid=sid) prof, acc = ru.combine_profiles(profiles) prof = ru.clean_profile(prof, sid=sid, state_final=res.FINAL, state_canceled=res.CANCELED) hostmap = get_hostmap(prof) if not hostmap: # FIXME: legacy host notation - deprecated hostmap = get_hostmap_deprecated(profiles) return prof, acc, hostmap except Exception as ex: # Push the exception raised by child functions print traceback.format_exc() raise EnTKError('Error: %s' % ex)