Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-11-26 02:34:07

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 # Define here the BeamSpotOnline record name,
0004 # it will be used both in FakeBeamMonitor setup and in payload creation/upload
0005 BSOnlineRecordName = 'BeamSpotOnlineHLTObjectsRcd'
0006 BSOnlineTag = 'BeamSpotOnlineFakeHLT'
0007 BSOnlineJobName = 'BeamSpotOnlineFakeHLT'
0008 BSOnlineOmsServiceUrl = 'http://cmsoms-eventing.cms:9949/urn:xdaq-application:lid=100/getRunAndLumiSection'
0009 useLockRecords = True
0010 
0011 import sys
0012 if 'runkey=hi_run' in sys.argv:
0013   from Configuration.Eras.Era_Run3_pp_on_PbPb_approxSiStripClusters_cff import Run3_pp_on_PbPb_approxSiStripClusters
0014   process = cms.Process("FakeBeamMonitorHLT", Run3_pp_on_PbPb_approxSiStripClusters)
0015 else:
0016   from Configuration.Eras.Era_Run3_cff import Run3
0017   process = cms.Process("FakeBeamMonitorHLT", Run3)
0018 
0019 # switch
0020 live = True # FIXME
0021 unitTest = False
0022 
0023 if 'unitTest=True' in sys.argv:
0024   live=False
0025   unitTest=True
0026   useLockRecords = False
0027 
0028 # Common part for PP and H.I Running
0029 #-----------------------------
0030 if unitTest:
0031   process.load("DQM.Integration.config.unittestinputsource_cfi")
0032   from DQM.Integration.config.unittestinputsource_cfi import options
0033 elif live:
0034   process.load("DQM.Integration.config.inputsource_cfi")
0035   from DQM.Integration.config.inputsource_cfi import options
0036 else:
0037   process.load("DQM.Integration.config.fileinputsource_cfi")
0038   from DQM.Integration.config.fileinputsource_cfi import options
0039 
0040 #--------------------------
0041 # HLT Filter
0042 # 0=random, 1=physics, 2=calibration, 3=technical
0043 #--------------------------
0044 process.hltTriggerTypeFilter = cms.EDFilter("HLTTriggerTypeFilter",
0045     SelectedTriggerType = cms.int32(1)
0046 )
0047 
0048 #-----------------------------
0049 # DQM Live Environment
0050 #-----------------------------
0051 process.load("DQM.Integration.config.environment_cfi")
0052 process.dqmEnv.subSystemFolder = 'FakeBeamMonitorHLT'
0053 process.dqmSaver.tag           = 'FakeBeamMonitorHLT'
0054 process.dqmSaver.runNumber     = options.runNumber
0055 # process.dqmSaverPB.tag         = 'FakeBeamMonitorHLT'
0056 # process.dqmSaverPB.runNumber   = options.runNumber
0057 
0058 # Configure tag and jobName if running Playback system
0059 if process.isDqmPlayback.value :
0060   BSOnlineTag = BSOnlineTag + 'Playback'
0061   BSOnlineJobName = BSOnlineJobName + 'Playback'
0062   BSOnlineOmsServiceUrl = ''
0063   useLockRecords = False
0064 
0065 #---------------
0066 """
0067 # Conditions
0068 if (live):
0069   process.load("DQM.Integration.config.FrontierCondition_GT_cfi")
0070 else:
0071   process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
0072   from Configuration.AlCa.GlobalTag import GlobalTag as gtCustomise
0073   process.GlobalTag = gtCustomise(process.GlobalTag, 'auto:run3_data', '')
0074   # you may need to set manually the GT in the line below
0075   #process.GlobalTag.globaltag = '100X_upgrade2018_realistic_v10'
0076 """
0077 #-----------------------------
0078 # BeamMonitor
0079 #-----------------------------
0080 process.load("DQM.BeamMonitor.FakeBeamMonitor_cff")
0081 process.dqmBeamMonitor = process.dqmFakeBeamMonitor.clone(
0082   monitorName = 'FakeBeamMonitor',
0083   OnlineMode = True,
0084   recordName = BSOnlineRecordName,
0085   useLockRecords = useLockRecords,
0086   resetEveryNLumi   = 5,
0087   resetPVEveryNLumi = 5
0088 )  
0089 
0090 #---------------
0091 # Calibration
0092 #---------------
0093 # Condition for P5 cluster
0094 #process.load("DQM.Integration.config.FrontierCondition_GT_cfi")
0095 process.dqmcommon = cms.Sequence(process.dqmEnv
0096                                * process.dqmSaver )#* process.dqmSaverPB)
0097 
0098 process.monitor = cms.Sequence(process.dqmBeamMonitor)
0099 
0100 #-----------------------------------------------------------
0101 # process customizations included here
0102 from DQM.Integration.config.online_customizations_cfi import *
0103 process = customise(process)
0104 
0105 # Set rawDataRepacker (HI and live) or rawDataCollector (for all the rest)
0106 if (process.runType.getRunType() == process.runType.hi_run and live):
0107   rawDataInputTag = "rawDataRepacker"
0108 else:
0109   rawDataInputTag = "rawDataCollector"
0110 
0111 #---------
0112 # Upload BeamSpotOnlineObject (HLTRcd) to CondDB
0113 if unitTest == False:
0114   process.OnlineDBOutputService = cms.Service("OnlineDBOutputService",
0115 
0116       DBParameters = cms.PSet(
0117                               messageLevel = cms.untracked.int32(0),
0118                               authenticationPath = cms.untracked.string('.')
0119                               ),
0120 
0121       # Upload to CondDB
0122       connect = cms.string('oracle://cms_orcon_prod/CMS_CONDITIONS'),
0123       preLoadConnectionString = cms.untracked.string('frontier://FrontierProd/CMS_CONDITIONS'),
0124       runNumber = cms.untracked.uint64(options.runNumber),
0125       omsServiceUrl = cms.untracked.string(BSOnlineOmsServiceUrl),
0126       latency = cms.untracked.uint32(2),
0127       autoCommit = cms.untracked.bool(True),
0128       saveLogsOnDB = cms.untracked.bool(True),
0129       jobName = cms.untracked.string(BSOnlineJobName), # name of the DB log record
0130       toPut = cms.VPSet(cms.PSet(
0131           record = cms.string(BSOnlineRecordName),
0132           tag = cms.string(BSOnlineTag),
0133           timetype = cms.untracked.string('Lumi'),
0134           onlyAppendUpdatePolicy = cms.untracked.bool(True)
0135       )),
0136       frontierKey = cms.untracked.string(options.runUniqueKey)
0137   )
0138 
0139 else:
0140   process.OnlineDBOutputService = cms.Service("OnlineDBOutputService",
0141     DBParameters = cms.PSet(
0142                             messageLevel = cms.untracked.int32(0),
0143                             authenticationPath = cms.untracked.string('.')
0144                             ),
0145 
0146     # Upload to CondDB
0147     connect = cms.string('sqlite_file:BeamSpotOnlineFakeHLT.db'),
0148     preLoadConnectionString = cms.untracked.string('sqlite_file:BeamSpotOnlineFakeHLT.db'),
0149 
0150     runNumber = cms.untracked.uint64(options.runNumber),
0151     lastLumiFile = cms.untracked.string('last_lumi.txt'),
0152     latency = cms.untracked.uint32(2),
0153     autoCommit = cms.untracked.bool(True),
0154     toPut = cms.VPSet(cms.PSet(
0155         record = cms.string(BSOnlineRecordName),
0156         tag = cms.string(BSOnlineTag),
0157         timetype = cms.untracked.string('Lumi'),
0158         onlyAppendUpdatePolicy = cms.untracked.bool(True)
0159     )),
0160     frontierKey = cms.untracked.string(options.runUniqueKey)
0161 )
0162 print("Configured frontierKey", options.runUniqueKey)
0163 
0164 #---------
0165 # Final path
0166 print("Final Source settings:", process.source)
0167 
0168 process.p = cms.Path( process.dqmcommon * process.monitor )