From 5537752ac6ae1e4d94fc5f9265570fd2213ba7c0 Mon Sep 17 00:00:00 2001 From: Peter Onyisi <ponyisi@utexas.edu> Date: Sat, 8 Oct 2016 14:00:48 +0200 Subject: [PATCH] Trigger protection in unsupported mode (AthenaMonitoring-02-03-06) * Add protection for case rec.doTrigger==False and DQMonFlags.useTrigger==True obo Ryan White. This mode of operation is NOT SUPPORTED BY DQ. * Tag AthenaMonitoring-02-03-06 2016-09-22 Harish Potti<harish.potti@cern.ch> * Add doAFPMon flag * Tag AthenaMonitoring-02-03-05 Former-commit-id: ffc99a5170b725587cd0123cbb01601b21b57325 --- Control/AthenaMonitoring/python/DQMonFlags.py | 7 +++++++ .../share/DataQualitySteering_jobOptions.py | 10 ++++++++++ .../AthenaMonitoring/share/TrigDecTool_jobOptions.py | 7 +++++++ 3 files changed, 24 insertions(+) diff --git a/Control/AthenaMonitoring/python/DQMonFlags.py b/Control/AthenaMonitoring/python/DQMonFlags.py index 8e600e918b4..fba3359c081 100644 --- a/Control/AthenaMonitoring/python/DQMonFlags.py +++ b/Control/AthenaMonitoring/python/DQMonFlags.py @@ -223,6 +223,13 @@ class doLucidMon(JobProperty): StoredValue=True list+=[doLucidMon] +class doAFPMon(JobProperty): + """Switch for AFP monitoring""" + statusOn=True + allowedTypes=['bool'] + StoredValue=False +list+=[doAFPMon] + class doHIMon(JobProperty): """ Switch for dedicated Heavy Ion monitoring """ statusOn=True diff --git a/Control/AthenaMonitoring/share/DataQualitySteering_jobOptions.py b/Control/AthenaMonitoring/share/DataQualitySteering_jobOptions.py index cac005f471c..57d87b85bb6 100644 --- a/Control/AthenaMonitoring/share/DataQualitySteering_jobOptions.py +++ b/Control/AthenaMonitoring/share/DataQualitySteering_jobOptions.py @@ -218,6 +218,16 @@ if DQMonFlags.doMonitoring(): except Exception: treatException("DataQualitySteering_jobOptions.py: exception when setting up LUCID monitoring") + #------------------# + # AFP monitoring # + #------------------# + if DQMonFlags.doAFPMon(): + try: + include("AFP_Monitoring/AFPMonitoring_jobOptions.py") + except Exception: + treatException("DataQualitySteering_jobOptions.py: exception when setting up AFP monitoring") + + #---------------------# # HeavyIon monitoring # #---------------------# diff --git a/Control/AthenaMonitoring/share/TrigDecTool_jobOptions.py b/Control/AthenaMonitoring/share/TrigDecTool_jobOptions.py index 3f329cd3a3c..2f25b8fe051 100644 --- a/Control/AthenaMonitoring/share/TrigDecTool_jobOptions.py +++ b/Control/AthenaMonitoring/share/TrigDecTool_jobOptions.py @@ -21,6 +21,7 @@ if DQMonFlags.useTrigger(): cfg = TriggerConfigGetter() if not hasattr(ToolSvc, DQMonFlags.nameTrigDecTool().split('/')[-1]): + tdt_local_logger.error('DQ Monitoring is being asked to set up the TrigDecisionTool for some reason. THIS IS A TERRIBLE IDEA AND SHOULD BE CONSIDERED A BUG!') from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool monTrigDecTool = Trig__TrigDecisionTool(name=DQMonFlags.nameTrigDecTool(), OutputLevel=ERROR, @@ -30,6 +31,12 @@ if DQMonFlags.useTrigger(): } ) ToolSvc += monTrigDecTool + # The following should be provided automatically when setting up the tool, but is not + # Still needs to be provided by the trigger + # When trigger has a standard procedure for this, switch + ToolSvc.TrigDecisionTool.TrigConfigSvc = "Trig::TrigConfigSvc/TrigConfigSvc" + from TrigEDMConfig.TriggerEDM import EDMLibraries + ToolSvc.TrigDecisionTool.Navigation.Dlls = [e for e in EDMLibraries if 'TPCnv' not in e] else: monTrigDecTool = getattr(ToolSvc, DQMonFlags.nameTrigDecTool().split('/')[-1]) tdt_local_logger.info('Scheduled monitoring TDT %s', monTrigDecTool) -- GitLab