tdt_local_logger.info('Scheduling the trigger translator') # Look up all monitoring menu lists, shove into trigger translator # pass them in as joined strings, unpack in tool from TrigHLTMonitoring.HLTMonTriggerList import HLTMonTriggerList tdt_local_hltconfig = HLTMonTriggerList() import collections tdt_mapping = {} for tdt_menu, tdt_menu_item in tdt_local_hltconfig.__dict__.items(): if not isinstance(tdt_menu_item, collections.Iterable): continue # work around possibly buggy category items if isinstance(tdt_menu_item, basestring): tdt_local_logger.debug('String, not list: %s' % tdt_menu) tdt_menu_item = [tdt_menu_item] if len([_ for _ in tdt_menu_item if not (_.startswith('HLT_') or _.startswith('L1'))]) != 0: tdt_local_logger.debug('Bad formatting: %s' % tdt_menu) patched_names = [] tdt_menu_item = [_ if (_.startswith('HLT_') or _.startswith('L1_')) else 'HLT_' + _ for _ in tdt_menu_item] tdt_mapping[tdt_menu] = ','.join(tdt_menu_item) for k, v in tdt_mapping.items(): tdt_local_logger.info('Category %s resolves to %s' % (k, v)) from AthenaMonitoring.AthenaMonitoringConf import TriggerTranslatorToolSimple monTrigTransTool = TriggerTranslatorToolSimple( name = DQMonFlags.nameTrigTransTool(), triggerMapping = tdt_mapping) ToolSvc += monTrigTransTool del tdt_local_logger, tdt_local_hltconfig, tdt_mapping
tdt_local_hltconfig = HLTMonTriggerList() import collections tdt_mapping = {} for tdt_menu, tdt_menu_item in tdt_local_hltconfig.__dict__.items(): if not isinstance(tdt_menu_item, collections.Iterable): continue # work around possibly buggy category items if isinstance(tdt_menu_item, basestring): tdt_local_logger.debug('String, not list: %s' % tdt_menu) tdt_menu_item = [tdt_menu_item] if len([ _ for _ in tdt_menu_item if not (_.startswith('HLT_') or _.startswith('L1')) ]) != 0: tdt_local_logger.debug('Bad formatting: %s' % tdt_menu) patched_names = [] tdt_menu_item = [ _ if (_.startswith('HLT_') or _.startswith('L1_')) else 'HLT_' + _ for _ in tdt_menu_item ] tdt_mapping[tdt_menu] = ','.join(tdt_menu_item) for k, v in tdt_mapping.items(): tdt_local_logger.info('Category %s resolves to %s' % (k, v)) from AthenaMonitoring.AthenaMonitoringConf import TriggerTranslatorToolSimple monTrigTransTool = TriggerTranslatorToolSimple( name=DQMonFlags.nameTrigTransTool(), triggerMapping=tdt_mapping) ToolSvc += monTrigTransTool del tdt_local_logger, tdt_local_hltconfig, tdt_mapping