Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-12-12 23:18:57

0001 # documentation: https://twiki.cern.ch/twiki/bin/view/CMS/AlCaDBPCL#Drop_box_metadata_management
0002 
0003 import FWCore.ParameterSet.Config as cms
0004 
0005 process = cms.Process("myprocess")
0006 
0007 process.load("CondCore.CondDB.CondDB_cfi")
0008 process.load("FWCore.MessageService.MessageLogger_cfi")
0009 
0010 process.CondDB.connect = 'sqlite_file:DropBoxMetadata.db' 
0011 
0012 process.maxEvents = cms.untracked.PSet(
0013     input = cms.untracked.int32(1)
0014 )
0015 process.source = cms.Source("EmptySource",
0016                             firstRun = cms.untracked.uint32(300000)
0017                             )
0018 
0019 # process.PoolDBOutputService.DBParameters.messageLevel = 3
0020 import json, os
0021 
0022 def encodeJsonInString(filename):
0023     """This function open the json file and encodes it in a string replacing probelamtic characters"""
0024     thefile = open(os.path.join(os.path.dirname(__file__), "..", "data", filename))
0025     thejson = json.load(thefile)
0026     thefile.close()
0027     return json.JSONEncoder().encode(thejson).replace('"',""")
0028 
0029 # beamspot by run
0030 BeamSpotObjectsRcdByRun_prod_str = encodeJsonInString("BeamSpotObjectsRcdByRun_prod.json")
0031 BeamSpotObjectsRcdByRun_prep_str = encodeJsonInString("BeamSpotObjectsRcdByRun_prep.json")
0032 
0033 # beamspot by lumi
0034 BeamSpotObjectsRcdByLumi_prod_str = encodeJsonInString("BeamSpotObjectsRcdByLumi_prod.json")
0035 BeamSpotObjectsRcdByLumi_prep_str = encodeJsonInString("BeamSpotObjectsRcdByLumi_prep.json")
0036 
0037 # beamspot High Perf by lumi
0038 BeamSpotObjectsRcdHPByLumi_prod_str = encodeJsonInString("BeamSpotObjectsRcdHPbyLumi_prod.json")
0039 BeamSpotObjectsRcdHPByLumi_prep_str = encodeJsonInString("BeamSpotObjectsRcdHPbyLumi_prep.json")
0040 
0041 # beamspot High Perf by run
0042 BeamSpotObjectsRcdHPByRun_prod_str = encodeJsonInString("BeamSpotObjectsRcdHPbyRun_prod.json")
0043 BeamSpotObjectsRcdHPByRun_prep_str = encodeJsonInString("BeamSpotObjectsRcdHPbyRun_prep.json")
0044 
0045 #SiStripBadStripRcd
0046 SiStripBadStripRcd_prod_str = encodeJsonInString("SiStripBadStripRcd_prod.json")
0047 SiStripBadStripRcd_prep_str = encodeJsonInString("SiStripBadStripRcd_prep.json")
0048 
0049 #SiStripBadStripRcd from Hit Efficiency
0050 SiStripBadStripRcdHitEff_prod_str = encodeJsonInString("SiStripBadStripFromHitEffRcd_prod.json")
0051 SiStripBadStripRcdHitEff_prep_str = encodeJsonInString("SiStripBadStripFromHitEffRcd_prep.json")
0052 
0053 #SiStripApvGainRcd
0054 SiStripApvGainRcd_prod_str = encodeJsonInString("SiStripApvGainRcd_prod.json")
0055 SiStripApvGainRcd_multirun_prod_str = encodeJsonInString("SiStripApvGainRcd_multirun_prod.json") 
0056 SiStripApvGainRcdAAG_prod_str = encodeJsonInString("SiStripApvGainRcdAAG_prod.json")
0057 SiStripApvGainRcdAAG_multirun_prod_str = encodeJsonInString("SiStripApvGainRcdAAG_multirun_prod.json")
0058 
0059 SiStripApvGainRcd_prep_str = encodeJsonInString("SiStripApvGainRcd_prep.json")
0060 SiStripApvGainRcd_multirun_prep_str = encodeJsonInString("SiStripApvGainRcd_multirun_prep.json")
0061 SiStripApvGainRcdAAG_prep_str = encodeJsonInString("SiStripApvGainRcdAAG_prep.json")
0062 SiStripApvGainRcdAAG_multirun_prep_str = encodeJsonInString("SiStripApvGainRcdAAG_multirun_prep.json")
0063 
0064 #SiPixelAli
0065 SiPixelAliRcd_prod_str = encodeJsonInString("SiPixelAliRcd_prod.json")
0066 SiPixelAliRcd_prep_str = encodeJsonInString("SiPixelAliRcd_prep.json")
0067 
0068 #SiPixelAliHG
0069 SiPixelAliHGRcd_prod_str = encodeJsonInString("SiPixelAliHGRcd_prod.json")
0070 SiPixelAliHGRcd_prep_str = encodeJsonInString("SiPixelAliHGRcd_prep.json")
0071 
0072 #SiPixelAliHGComb
0073 SiPixelAliHGCombRcd_prod_str = encodeJsonInString("SiPixelAliHGCombRcd_prod.json")
0074 SiPixelAliHGCombRcd_prep_str = encodeJsonInString("SiPixelAliHGCombRcd_prep.json")
0075 
0076 #SiPixelAliHLTHGComb
0077 SiPixelAliHLTHGCombRcd_prod_str = encodeJsonInString("SiPixelAliHLTHGCombRcd_prod.json")
0078 SiPixelAliHLTHGCombRcd_prep_str = encodeJsonInString("SiPixelAliHLTHGCombRcd_prep.json")
0079 
0080 #EcalPedestalsRcd
0081 EcalPedestalsRcd_prod_str = encodeJsonInString("EcalPedestal_prod.json")
0082 EcalPedestalsRcd_prep_str = encodeJsonInString("EcalPedestal_prep.json")
0083 
0084 #LumiCorrectionsRcd
0085 LumiCorrectionsRcd_prod_str = encodeJsonInString("LumiCorrections_prod.json")
0086 LumiCorrectionsRcd_prep_str = encodeJsonInString("LumiCorrections_prep.json")
0087 
0088 #SiPixelQuality
0089 SiPixelQualityFromDbRcd_prompt_prod_str = encodeJsonInString("SiPixelQualityFromDbRcd_prompt_prod.json")
0090 SiPixelQualityFromDbRcd_prompt_prep_str = encodeJsonInString("SiPixelQualityFromDbRcd_prompt_prep.json")
0091 SiPixelQualityFromDbRcd_stuckTBM_prod_str = encodeJsonInString("SiPixelQualityFromDbRcd_stuckTBM_prod.json")
0092 SiPixelQualityFromDbRcd_stuckTBM_prep_str = encodeJsonInString("SiPixelQualityFromDbRcd_stuckTBM_prep.json")
0093 SiPixelQualityFromDbRcd_other_prod_str = encodeJsonInString("SiPixelQualityFromDbRcd_other_prod.json")
0094 SiPixelQualityFromDbRcd_other_prep_str = encodeJsonInString("SiPixelQualityFromDbRcd_other_prep.json")
0095 
0096 #SiPixelLorenzAngle
0097 SiPixelLorentzAngleRcd_prod_str =  encodeJsonInString("SiPixelLorentzAngleRcd_prod.json")
0098 SiPixelLorentzAngleRcd_multirun_prod_str =  encodeJsonInString("SiPixelLorentzAngleRcd_multirun_prod.json")
0099 SiPixelLorentzAngleRcd_prep_str = encodeJsonInString("SiPixelLorentzAngleRcd_prep.json")
0100 SiPixelLorentzAngleRcd_multirun_prep_str = encodeJsonInString("SiPixelLorentzAngleRcd_multirun_prep.json")
0101 
0102 #SiPixelLorenzAngle, FPix 
0103 SiPixelLorentzAngleRcd_MCS_prod_str =  encodeJsonInString("SiPixelLorentzAngleRcd_MCS_prod.json")
0104 SiPixelLorentzAngleRcd_MCS_multirun_prod_str =  encodeJsonInString("SiPixelLorentzAngleRcd_MCS_multirun_prod.json")
0105 SiPixelLorentzAngleRcd_MCS_prep_str = encodeJsonInString("SiPixelLorentzAngleRcd_MCS_prep.json")
0106 SiPixelLorentzAngleRcd_MCS_multirun_prep_str = encodeJsonInString("SiPixelLorentzAngleRcd_MCS_multirun_prep.json")
0107 
0108 #CT-PPS alignment and timing
0109 CTPPSRPAlignmentCorrectionsDataRcd_prod_str =  encodeJsonInString("CTPPSRPAlignmentCorrectionsDataRcd_prod.json")
0110 CTPPSRPAlignmentCorrectionsDataRcd_prep_str = encodeJsonInString("CTPPSRPAlignmentCorrectionsDataRcd_prep.json")
0111 PPSTimingCalibrationRcd_prod_str = encodeJsonInString("PPSTimingCalibrationRcd_prod.json")
0112 PPSTimingCalibrationRcd_prep_str = encodeJsonInString("PPSTimingCalibrationRcd_prep.json")
0113 PPSTimingCalibrationRcd_Sampic_prod_str = encodeJsonInString("PPSTimingCalibrationRcd_Sampic_prod.json")
0114 PPSTimingCalibrationRcd_Sampic_prep_str = encodeJsonInString("PPSTimingCalibrationRcd_Sampic_prep.json")
0115 
0116 #SiStripLorenzAngle
0117 SiStripLorentzAngleRcd_prod_str =  encodeJsonInString("SiStripLorentzAngleRcd_prod.json")
0118 SiStripLorentzAngleRcd_multirun_prod_str =  encodeJsonInString("SiStripLorentzAngleRcd_multirun_prod.json")
0119 SiStripLorentzAngleRcd_prep_str = encodeJsonInString("SiStripLorentzAngleRcd_prep.json")
0120 SiStripLorentzAngleRcd_multirun_prep_str = encodeJsonInString("SiStripLorentzAngleRcd_multirun_prep.json")
0121 
0122 # given a set of .json files in the current dir, ProduceDropBoxMetadata produces a sqlite containign the payload with the prod/and/prep metadata
0123 process.mywriter = cms.EDAnalyzer("ProduceDropBoxMetadata",
0124                                   # set to True if you want to write out a sqlite.db translating the json's into a payload
0125                                   write = cms.untracked.bool(True),
0126 
0127                                   # toWrite holds a list of Pset's, one for each workflow you want to produce DropBoxMetadata for;
0128                                   # you need to have 2 .json files for each PSet
0129                                   toWrite = cms.VPSet(cms.PSet(record              = cms.untracked.string("BeamSpotObjectsRcdByRun"), 
0130                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0131                                                                FileClass           = cms.untracked.string("ALCA"),
0132                                                                prodMetaData        = cms.untracked.string(BeamSpotObjectsRcdByRun_prod_str),
0133                                                                prepMetaData        = cms.untracked.string(BeamSpotObjectsRcdByRun_prep_str),
0134                                                                ),
0135                                                       cms.PSet(record              = cms.untracked.string('BeamSpotObjectsRcdByLumi'),
0136                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0137                                                                FileClass           = cms.untracked.string("ALCA"),
0138                                                                prodMetaData        = cms.untracked.string(BeamSpotObjectsRcdByLumi_prod_str),
0139                                                                prepMetaData        = cms.untracked.string(BeamSpotObjectsRcdByLumi_prep_str),
0140                                                                ),
0141                                                       cms.PSet(record              = cms.untracked.string('BeamSpotObjectsRcdHPByLumi'),
0142                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0143                                                                FileClass           = cms.untracked.string("ALCA"),
0144                                                                prodMetaData        = cms.untracked.string(BeamSpotObjectsRcdHPByLumi_prod_str),
0145                                                                prepMetaData        = cms.untracked.string(BeamSpotObjectsRcdHPByLumi_prep_str),
0146                                                                ),
0147                                                       cms.PSet(record              = cms.untracked.string('BeamSpotObjectsRcdHPByRun'),
0148                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0149                                                                FileClass           = cms.untracked.string("ALCA"),
0150                                                                prodMetaData        = cms.untracked.string(BeamSpotObjectsRcdHPByRun_prod_str),
0151                                                                prepMetaData        = cms.untracked.string(BeamSpotObjectsRcdHPByRun_prep_str),
0152                                                                ),
0153                                                       cms.PSet(record              = cms.untracked.string('SiStripBadStripRcd'),
0154                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0155                                                                FileClass           = cms.untracked.string("ALCA"),
0156                                                                prodMetaData        = cms.untracked.string(SiStripBadStripRcd_prod_str),
0157                                                                prepMetaData        = cms.untracked.string(SiStripBadStripRcd_prep_str),
0158                                                                ),
0159                                                       cms.PSet(record              = cms.untracked.string('SiStripBadStripFromHitEffRcd'),
0160                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0161                                                                FileClass           = cms.untracked.string("ALCA"),
0162                                                                prodMetaData        = cms.untracked.string(SiStripBadStripRcdHitEff_prod_str),
0163                                                                prepMetaData        = cms.untracked.string(SiStripBadStripRcdHitEff_prep_str),
0164                                                                ),
0165                                                       cms.PSet(record              = cms.untracked.string('SiStripApvGainRcd'),
0166                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0167                                                                FileClass           = cms.untracked.string("ALCA"),
0168                                                                prodMetaData        = cms.untracked.string(SiStripApvGainRcd_prod_str),
0169                                                                prodMetaDataMultiRun = cms.untracked.string(SiStripApvGainRcd_multirun_prod_str),
0170                                                                prepMetaData        = cms.untracked.string(SiStripApvGainRcd_prep_str),
0171                                                                prepMetaDataMultiRun = cms.untracked.string(SiStripApvGainRcd_multirun_prep_str),
0172                                                                ),
0173                                                       cms.PSet(record              = cms.untracked.string('TrackerAlignmentRcd'),
0174                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0175                                                                FileClass           = cms.untracked.string("ALCA"),
0176                                                                prodMetaData        = cms.untracked.string(SiPixelAliRcd_prod_str),
0177                                                                prepMetaData        = cms.untracked.string(SiPixelAliRcd_prep_str),
0178                                                                ),
0179                                                       cms.PSet(record              = cms.untracked.string('TrackerAlignmentHGRcd'),
0180                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0181                                                                FileClass           = cms.untracked.string("ALCA"),
0182                                                                prodMetaData        = cms.untracked.string(SiPixelAliHGRcd_prod_str),
0183                                                                prepMetaData        = cms.untracked.string(SiPixelAliHGRcd_prep_str),
0184                                                                ),
0185                                                       cms.PSet(record              = cms.untracked.string('TrackerAlignmentHGCombinedRcd'),
0186                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0187                                                                FileClass           = cms.untracked.string("ALCA"),
0188                                                                prodMetaData        = cms.untracked.string(SiPixelAliHGCombRcd_prod_str),
0189                                                                prepMetaData        = cms.untracked.string(SiPixelAliHGCombRcd_prep_str),
0190                                                                ),
0191                                                       cms.PSet(record              = cms.untracked.string('TrackerAlignmentHLTHGCombinedRcd'),
0192                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0193                                                                FileClass           = cms.untracked.string("ALCA"),
0194                                                                prodMetaData        = cms.untracked.string(SiPixelAliHLTHGCombRcd_prod_str),
0195                                                                prepMetaData        = cms.untracked.string(SiPixelAliHLTHGCombRcd_prep_str),
0196                                                                ),
0197                                                       cms.PSet(record              = cms.untracked.string('SiStripApvGainRcdAAG'),
0198                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0199                                                                FileClass           = cms.untracked.string("ALCA"),
0200                                                                prodMetaData        = cms.untracked.string(SiStripApvGainRcdAAG_prod_str),
0201                                                                prodMetaDataMultiRun = cms.untracked.string(SiStripApvGainRcdAAG_multirun_prod_str),
0202                                                                prepMetaData        = cms.untracked.string(SiStripApvGainRcdAAG_prep_str),
0203                                                                prepMetaDataMultiRun = cms.untracked.string(SiStripApvGainRcdAAG_multirun_prep_str)
0204                                                                ),
0205                                                       cms.PSet(record              = cms.untracked.string('EcalPedestalsRcd'),
0206                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0207                                                                FileClass           = cms.untracked.string("ALCA"),
0208                                                                prodMetaData        = cms.untracked.string(EcalPedestalsRcd_prod_str),
0209                                                                prepMetaData        = cms.untracked.string(EcalPedestalsRcd_prep_str),
0210                                                                ),
0211                                                       cms.PSet(record              = cms.untracked.string('LumiCorrectionsRcd'),
0212                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0213                                                                FileClass           = cms.untracked.string("ALCA"),
0214                                                                prodMetaData        = cms.untracked.string(LumiCorrectionsRcd_prod_str),
0215                                                                prepMetaData        = cms.untracked.string(LumiCorrectionsRcd_prep_str),
0216                                                                ),
0217                                                       cms.PSet(record              = cms.untracked.string('SiPixelQualityFromDbRcd_prompt'),
0218                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0219                                                                FileClass           = cms.untracked.string("ALCA"),
0220                                                                prodMetaData        = cms.untracked.string(SiPixelQualityFromDbRcd_prompt_prod_str),
0221                                                                prepMetaData        = cms.untracked.string(SiPixelQualityFromDbRcd_prompt_prep_str),
0222                                                                ),
0223                                                       cms.PSet(record              = cms.untracked.string('SiPixelQualityFromDbRcd_stuckTBM'),
0224                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0225                                                                FileClass           = cms.untracked.string("ALCA"),
0226                                                                prodMetaData        = cms.untracked.string(SiPixelQualityFromDbRcd_stuckTBM_prod_str),
0227                                                                prepMetaData        = cms.untracked.string(SiPixelQualityFromDbRcd_stuckTBM_prep_str),
0228                                                                ),
0229                                                       cms.PSet(record              = cms.untracked.string('SiPixelQualityFromDbRcd_other'),
0230                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0231                                                                FileClass           = cms.untracked.string("ALCA"),
0232                                                                prodMetaData        = cms.untracked.string(SiPixelQualityFromDbRcd_other_prod_str),
0233                                                                prepMetaData        = cms.untracked.string(SiPixelQualityFromDbRcd_other_prep_str),
0234                                                                ),
0235                                                       cms.PSet(record              = cms.untracked.string('SiPixelLorentzAngleRcd'),
0236                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0237                                                                FileClass           = cms.untracked.string("ALCA"),
0238                                                                prodMetaData        = cms.untracked.string(SiPixelLorentzAngleRcd_prod_str),
0239                                                                prodMetaDataMultiRun = cms.untracked.string(SiPixelLorentzAngleRcd_multirun_prod_str),
0240                                                                prepMetaData        = cms.untracked.string(SiPixelLorentzAngleRcd_prep_str),
0241                                                                prepMetaDataMultiRun = cms.untracked.string(SiPixelLorentzAngleRcd_multirun_prep_str),
0242                                                            ),
0243                                                       cms.PSet(record              = cms.untracked.string('SiPixelLorentzAngleRcdMCS'),
0244                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0245                                                                FileClass           = cms.untracked.string("ALCA"),
0246                                                                prodMetaData        = cms.untracked.string(SiPixelLorentzAngleRcd_MCS_prod_str),
0247                                                                prodMetaDataMultiRun = cms.untracked.string(SiPixelLorentzAngleRcd_MCS_multirun_prod_str),
0248                                                                prepMetaData        = cms.untracked.string(SiPixelLorentzAngleRcd_MCS_prep_str),
0249                                                                prepMetaDataMultiRun = cms.untracked.string(SiPixelLorentzAngleRcd_MCS_multirun_prep_str),
0250                                                            ),
0251                                                       cms.PSet(record              = cms.untracked.string('CTPPSRPAlignmentCorrectionsDataRcd'),
0252                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0253                                                                FileClass           = cms.untracked.string("ALCA"),
0254                                                                prodMetaData        = cms.untracked.string(CTPPSRPAlignmentCorrectionsDataRcd_prod_str),
0255                                                                prepMetaData        = cms.untracked.string(CTPPSRPAlignmentCorrectionsDataRcd_prep_str),
0256                                                                ),
0257                                                       cms.PSet(record              = cms.untracked.string('PPSTimingCalibrationRcd_HPTDC'),
0258                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0259                                                                FileClass           = cms.untracked.string("ALCA"),
0260                                                                prodMetaData        = cms.untracked.string(PPSTimingCalibrationRcd_prod_str),
0261                                                                prepMetaData        = cms.untracked.string(PPSTimingCalibrationRcd_prep_str),
0262                                                                ),
0263                                                       cms.PSet(record              = cms.untracked.string('PPSTimingCalibrationRcd_SAMPIC'),
0264                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0265                                                                FileClass           = cms.untracked.string("ALCA"),
0266                                                                prodMetaData        = cms.untracked.string(PPSTimingCalibrationRcd_Sampic_prod_str),
0267                                                                prepMetaData        = cms.untracked.string(PPSTimingCalibrationRcd_Sampic_prep_str),
0268                                                                ),
0269                                                       cms.PSet(record              = cms.untracked.string('SiStripLorentzAngleRcd'),
0270                                                                Source              = cms.untracked.string("AlcaHarvesting"),
0271                                                                FileClass           = cms.untracked.string("ALCA"),
0272                                                                prodMetaData        = cms.untracked.string(SiStripLorentzAngleRcd_prod_str),
0273                                                                prodMetaDataMultiRun = cms.untracked.string(SiStripLorentzAngleRcd_multirun_prod_str),
0274                                                                prepMetaData        = cms.untracked.string(SiStripLorentzAngleRcd_prep_str),
0275                                                                prepMetaDataMultiRun = cms.untracked.string(SiStripLorentzAngleRcd_multirun_prep_str),
0276                                                                ),
0277                                                       ),
0278                                   # this boolean will read the content of whichever payload is available and print its content to stoutput
0279                                   # set this to false if you write out a sqlite.db translating the json's into a payload
0280                                   read = cms.untracked.bool(False),
0281                                   toRead = cms.untracked.vstring() 
0282                                   )
0283 
0284 process.p = cms.Path(process.mywriter)
0285 
0286 if process.mywriter.write:
0287 
0288     from CondCore.CondDB.CondDB_cfi import CondDB
0289     CondDB.connect = "sqlite_file:DropBoxMetadata.db"
0290 
0291     process.PoolDBOutputService = cms.Service("PoolDBOutputService",
0292                                               CondDB,
0293                                               toPut = cms.VPSet(cms.PSet(record = cms.string('DropBoxMetadataRcd'),
0294                                                                          tag = cms.string('DropBoxMetadata'),
0295                                                                          timetype   = cms.untracked.string('runnumber')
0296                                                                          )
0297                                                                 ),
0298                                               loadBlobStreamer = cms.untracked.bool(False),
0299                                               #    timetype   = cms.untracked.string('lumiid')
0300                                               #    timetype   = cms.untracked.string('runnumber')
0301                                               )
0302     
0303 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
0304 process.GlobalTag.globaltag = '124X_dataRun3_Express_Queue'