File indexing completed on 2024-11-26 02:34:07
0001 import FWCore.ParameterSet.Config as cms
0002
0003
0004
0005 BSOnlineRecordName = 'BeamSpotOnlineHLTObjectsRcd'
0006 BSOnlineTag = 'BeamSpotOnlineHLT'
0007 BSOnlineJobName = 'BeamSpotOnlineHLT'
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("BeamMonitorHLT", Run3_pp_on_PbPb_approxSiStripClusters)
0015 else:
0016 from Configuration.Eras.Era_Run3_cff import Run3
0017 process = cms.Process("BeamMonitorHLT", Run3)
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035 live = True
0036 unitTest = False
0037
0038 if 'unitTest=True' in sys.argv:
0039 live=False
0040 unitTest=True
0041 useLockRecords = False
0042
0043
0044
0045 if unitTest:
0046 process.load("DQM.Integration.config.unitteststreamerinputsource_cfi")
0047 from DQM.Integration.config.unitteststreamerinputsource_cfi import options
0048
0049 if process.runType.getRunType() == process.runType.hi_run:
0050 process.source.streamLabel = 'streamHIDQMOnlineBeamspot'
0051 else:
0052 process.source.streamLabel = 'streamDQMOnlineBeamspot'
0053
0054 elif live:
0055
0056 process.load("DQM.Integration.config.inputsource_cfi")
0057 from DQM.Integration.config.inputsource_cfi import options
0058
0059 if process.runType.getRunType() == process.runType.hi_run:
0060 process.source.streamLabel = 'streamHIDQMOnlineBeamspot'
0061 else:
0062 process.source.streamLabel = 'streamDQMOnlineBeamspot'
0063
0064 else:
0065 process.load("DQM.Integration.config.fileinputsource_cfi")
0066 from DQM.Integration.config.fileinputsource_cfi import options
0067
0068
0069
0070
0071
0072
0073
0074
0075
0076 process.hltTriggerTypeFilter = cms.EDFilter("HLTTriggerTypeFilter",
0077 SelectedTriggerType = cms.int32(1)
0078 )
0079
0080
0081
0082
0083 process.load("DQM.Integration.config.environment_cfi")
0084 process.dqmEnv.subSystemFolder = 'BeamMonitorHLT'
0085 process.dqmSaver.tag = 'BeamMonitorHLT'
0086 process.dqmSaver.runNumber = options.runNumber
0087
0088
0089
0090
0091 if process.isDqmPlayback.value :
0092 BSOnlineTag = BSOnlineTag + 'Playback'
0093 BSOnlineJobName = BSOnlineJobName + 'Playback'
0094 BSOnlineOmsServiceUrl = ''
0095 useLockRecords = False
0096
0097
0098
0099
0100 process.load("DQM.BeamMonitor.BeamMonitor_cff")
0101
0102
0103
0104
0105
0106 process.load("DQM.Integration.config.FrontierCondition_GT_cfi")
0107 process.GlobalTag.DBParameters.authenticationPath = cms.untracked.string('.')
0108
0109
0110
0111
0112
0113 process.dqmBeamMonitor.useLockRecords = cms.untracked.bool(useLockRecords)
0114 if process.dqmRunConfig.type.value() == "production":
0115 process.dqmBeamMonitor.BeamFitter.WriteAscii = True
0116 process.dqmBeamMonitor.BeamFitter.AsciiFileName = '/nfshome0/yumiceva/BeamMonitorDQM/BeamFitResults.txt'
0117 process.dqmBeamMonitor.BeamFitter.WriteDIPAscii = True
0118 process.dqmBeamMonitor.BeamFitter.DIPFileName = '/nfshome0/dqmpro/BeamMonitorDQM/BeamFitResults.txt'
0119 else:
0120 process.dqmBeamMonitor.BeamFitter.WriteAscii = False
0121 process.dqmBeamMonitor.BeamFitter.AsciiFileName = '/nfshome0/yumiceva/BeamMonitorDQM/BeamFitResults.txt'
0122 process.dqmBeamMonitor.BeamFitter.WriteDIPAscii = True
0123 process.dqmBeamMonitor.BeamFitter.DIPFileName = '/nfshome0/dqmdev/BeamMonitorDQM/BeamFitResults.txt'
0124
0125 process.dqmcommon = cms.Sequence(process.dqmEnv
0126 * process.dqmSaver)
0127
0128 process.monitor = cms.Sequence(process.dqmBeamMonitor)
0129
0130
0131
0132 from DQM.Integration.config.online_customizations_cfi import *
0133 process = customise(process)
0134
0135
0136 from EventFilter.OnlineMetaDataRawToDigi.tcdsRawToDigi_cfi import *
0137 process.tcdsDigis = tcdsRawToDigi.clone()
0138
0139
0140 process.load("Configuration.StandardSequences.RawToDigi_Data_cff")
0141
0142
0143
0144 rawDataInputTag = "hltFEDSelectorTCDS"
0145 onlineMetaDataInputTag = "hltFEDSelectorOnlineMetaData"
0146
0147 process.onlineMetaDataDigis.onlineMetaDataInputLabel = onlineMetaDataInputTag
0148 process.scalersRawToDigi.scalersInputTag = rawDataInputTag
0149 process.tcdsDigis.InputLabel = rawDataInputTag
0150
0151
0152
0153 import RecoVertex.BeamSpotProducer.onlineBeamSpotESProducer_cfi as _mod
0154 process.BeamSpotESProducer = _mod.onlineBeamSpotESProducer.clone()
0155
0156
0157 if ((not live) or process.isDqmPlayback.value):
0158 process.BeamSpotESProducer.timeThreshold = cms.int32(int(1e6))
0159
0160 import RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi
0161 process.offlineBeamSpot = RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi.onlineBeamSpotProducer.clone()
0162
0163
0164
0165
0166 process.stripTrackerHVOn = cms.EDFilter( "DetectorStateFilter",
0167 DCSRecordLabel = cms.untracked.InputTag( "onlineMetaDataDigis" ),
0168 DcsStatusLabel = cms.untracked.InputTag( "scalersRawToDigi" ),
0169 DebugOn = cms.untracked.bool( False ),
0170 DetectorType = cms.untracked.string( "sistrip" )
0171 )
0172
0173 process.pixelTrackerHVOn = cms.EDFilter( "DetectorStateFilter",
0174 DCSRecordLabel = cms.untracked.InputTag( "onlineMetaDataDigis" ),
0175 DcsStatusLabel = cms.untracked.InputTag( "scalersRawToDigi" ),
0176 DebugOn = cms.untracked.bool( False ),
0177 DetectorType = cms.untracked.string( "pixel" )
0178 )
0179
0180
0181
0182
0183
0184 if (process.runType.getRunType() == process.runType.pp_run or
0185 process.runType.getRunType() == process.runType.pp_run_stage1 or
0186 process.runType.getRunType() == process.runType.hpu_run or
0187 process.runType.getRunType() == process.runType.hi_run or
0188 process.runType.getRunType() == process.runType.commissioning_run):
0189
0190 print("[beamhlt_dqm_sourceclient-live_cfg]:: Running pp")
0191
0192 process.load("RecoVertex.BeamSpotProducer.BeamSpot_cfi")
0193
0194 process.dqmBeamMonitor.monitorName = 'BeamMonitorHLT'
0195
0196 process.dqmBeamMonitor.OnlineMode = True
0197 process.dqmBeamMonitor.recordName = BSOnlineRecordName
0198
0199 process.dqmBeamMonitor.resetEveryNLumi = 5
0200 process.dqmBeamMonitor.resetPVEveryNLumi = 5
0201
0202 process.dqmBeamMonitor.PVFitter.minNrVerticesForFit = 20
0203 process.dqmBeamMonitor.PVFitter.minVertexNdf = 10
0204
0205
0206 if(process.runType.getRunType() == process.runType.hi_run):
0207 process.dqmBeamMonitor.BeamFitter.TrackCollection = 'hltPFMuonMergingPPOnAA'
0208 process.dqmBeamMonitor.primaryVertex = 'hltVerticesPFFilterPPOnAA'
0209 process.dqmBeamMonitor.PVFitter.VertexCollection = 'hltVerticesPFFilterPPOnAA'
0210 else:
0211 process.dqmBeamMonitor.BeamFitter.TrackCollection = 'hltPFMuonMerging'
0212 process.dqmBeamMonitor.primaryVertex = 'hltVerticesPFFilter'
0213 process.dqmBeamMonitor.PVFitter.VertexCollection = 'hltVerticesPFFilter'
0214
0215
0216 process.dqmBeamMonitor.PVFitter.errorScale = 0.95
0217
0218
0219
0220 process.dqmBeamMonitor.jetTrigger = cms.untracked.vstring(
0221 "HLT_HT300_Beamspot", "HLT_HT300_Beamspot",
0222 "HLT_PAZeroBias_v", "HLT_ZeroBias_", "HLT_QuadJet",
0223 "HLT_HI",
0224 "HLT_PixelClusters")
0225
0226 process.dqmBeamMonitor.hltResults = "TriggerResults::HLT"
0227
0228
0229
0230 if unitTest == False:
0231 process.OnlineDBOutputService = cms.Service("OnlineDBOutputService",
0232 DBParameters = cms.PSet(
0233 messageLevel = cms.untracked.int32(0),
0234 authenticationPath = cms.untracked.string('.')
0235 ),
0236
0237
0238 connect = cms.string('oracle://cms_orcon_prod/CMS_CONDITIONS'),
0239 preLoadConnectionString = cms.untracked.string('frontier://FrontierProd/CMS_CONDITIONS'),
0240 runNumber = cms.untracked.uint64(options.runNumber),
0241 omsServiceUrl = cms.untracked.string(BSOnlineOmsServiceUrl),
0242 latency = cms.untracked.uint32(2),
0243 autoCommit = cms.untracked.bool(True),
0244 saveLogsOnDB = cms.untracked.bool(True),
0245 jobName = cms.untracked.string(BSOnlineJobName),
0246 toPut = cms.VPSet(cms.PSet(
0247 record = cms.string(BSOnlineRecordName),
0248 tag = cms.string(BSOnlineTag),
0249 timetype = cms.untracked.string('Lumi'),
0250 onlyAppendUpdatePolicy = cms.untracked.bool(True)
0251 )),
0252 frontierKey = cms.untracked.string(options.runUniqueKey)
0253 )
0254
0255 else:
0256 process.OnlineDBOutputService = cms.Service("OnlineDBOutputService",
0257 DBParameters = cms.PSet(
0258 messageLevel = cms.untracked.int32(0),
0259 authenticationPath = cms.untracked.string('.')
0260 ),
0261
0262
0263 connect = cms.string('sqlite_file:BeamSpotOnlineHLT.db'),
0264 preLoadConnectionString = cms.untracked.string('sqlite_file:BeamSpotOnlineHLT.db'),
0265 runNumber = cms.untracked.uint64(options.runNumber),
0266 lastLumiFile = cms.untracked.string('src/DQM/Integration/python/clients/last_lumi.txt'),
0267 latency = cms.untracked.uint32(2),
0268 autoCommit = cms.untracked.bool(True),
0269 toPut = cms.VPSet(cms.PSet(
0270 record = cms.string(BSOnlineRecordName),
0271 tag = cms.string(BSOnlineTag),
0272 timetype = cms.untracked.string('Lumi'),
0273 onlyAppendUpdatePolicy = cms.untracked.bool(True)
0274 )),
0275 frontierKey = cms.untracked.string(options.runUniqueKey)
0276 )
0277
0278 print("Configured frontierKey", options.runUniqueKey)
0279
0280 process.p = cms.Path( process.hltTriggerTypeFilter
0281 * process.tcdsDigis
0282 * process.scalersRawToDigi
0283 * process.onlineMetaDataDigis
0284 * process.pixelTrackerHVOn
0285 * process.stripTrackerHVOn
0286 * process.dqmcommon
0287 * process.offlineBeamSpot
0288 * process.monitor )
0289
0290 print("Global Tag used:", process.GlobalTag.globaltag.value())
0291 print("Final Source settings:", process.source)
0292