def default_check_steps_OHMon(test, hist_path): steps = [] # Extract expert-monitoring.root file from OH server output extract_hist = ExtractExpertMonitoring() hist_path_split = hist_path.split(':') if len(hist_path_split) > 1: extract_hist.input_file = hist_path_split[0] extract_hist.path_prefix = hist_path_split[1] else: extract_hist.input_file = hist_path steps.append(extract_hist) # Default check steps steps.extend(CheckSteps.default_check_steps(test)) # Remove histogram merging step matches = [step for step in steps if step.name == 'HistMerge'] for hm_step in matches: steps.remove(hm_step) return steps
# Run RuleBook and create prescales ps = ExecStep.ExecStep('RunRulebook') ps.type = 'other' ps.executable = '(cd TrigMenuRulebook/scripts && ./runRuleBook.py "PhysicsP1_pp_run3_v1_rules:runOptions.ignoreErrors=True" 20000 output_RB_ART && cd ../..)' ps.input = '' #==================================================================================================== # The full test test = Test.Test() test.art_type = 'build' test.exec_steps = [menu, rbsetup, ps] # Only keep relevant checks from the defaults test.check_steps = [ chk for chk in CheckSteps.default_check_steps(test) if type(chk) in (CheckSteps.LogMergeStep, CheckSteps.CheckLogStep) ] # Ignore expected errors from the rulebook due to mismatch of chains in menu and rules checklog = test.get_step("CheckLog") checklog.config_file = 'checklogTrigP1Rulebook.conf' # Collect error message but do not make the test fail checkRBerr = CheckSteps.CheckLogStep('CheckRBErrors') checkRBerr.output_stream = Step.Step.OutputStream.FILE_ONLY checkRBerr.required = False test.check_steps.append(checkRBerr) import sys sys.exit(test.run())
ex.input = 'data' ex.threads = 1 precommand = ''.join([ "setMenu='LS2_v1';", # LS2_v1 soon to be renamed to Dev_pp_run3_v1 "doWriteBS=False;", "doWriteRDOTrigger=True;", "forceEnableAllChains=True;", "fpeAuditor=True;", "failIfNoProxy=True;" ]) ex.args = '-c "{:s}"'.format(precommand) test = Test.Test() test.art_type = 'build' test.exec_steps = [ex] test.check_steps = CheckSteps.default_check_steps(test) # Overwrite default MessageCount settings # We are trying to lower the limits step by step # Ultimately there should be no per-event messages msgcount = test.get_step("MessageCount") msgcount.thresholds = {'WARNING': 500, 'INFO': 1200, 'other': 80} msgcount.required = True # make the test exit code depend on this step # Add a step comparing counts in the log against reference refcomp = CheckSteps.RegTestStep("CountRefComp") refcomp.regex = r'TrigSignatureMoniMT\s*INFO\sHLT_.*|TrigSignatureMoniMT\s*INFO\s-- #[0-9]+ (Events|Features).*' refcomp.reference = 'TriggerTest/ref_data_v1Dev_build.ref' refcomp.required = True # Final exit code depends on this step CheckSteps.add_step_after_type(test.check_steps, CheckSteps.LogMergeStep, refcomp)
# art-output: *.root # art-output: *.pmon.gz # art-output: *perfmon* # art-output: prmon* # art-output: *.check* from TrigValTools.TrigValSteering import Test, ExecStep, CheckSteps, Step ex = ExecStep.ExecStep() ex.type = 'athena' ex.job_options = 'TriggerJobOpts/runHLT_standalone.py' ex.input = 'data' ex.threads = 1 # LS2_v1 soon to be renamed to Dev_pp_run3_v1 ex.args = '-c "setMenu=\'LS2_v1\';doWriteBS=True;doWriteRDOTrigger=False;"' checkBS = Step.Step("CheckBS") checkBS.executable = 'trigbs_dumpHLTContentInBS_run3.py' checkBS.args = ' --l1 --hlt --hltres --stag --sizeSummary' checkBS.args += ' `find . -name \'*Single_Stream.daq.RAW.*Athena.*.data\' | tail -n 1`' checkBS.required = True checkBS.auto_report_result = True test = Test.Test() test.art_type = 'grid' test.exec_steps = [ex] test.check_steps = [checkBS] + CheckSteps.default_check_steps(test) import sys sys.exit(test.run())