Skip to content

Commit d721800

Browse files
authored
Merge pull request cms-sw#43291 from mmusich/mm_lessVerbose_BeamSpotRcdPrinte
add verbose option to `BeamSpotRcdPrinter` and use it in the unit tests
2 parents 9e9d289 + 65ac130 commit d721800

File tree

3 files changed

+18
-9
lines changed

3 files changed

+18
-9
lines changed

CondTools/BeamSpot/plugins/BeamSpotRcdPrinter.cc

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ namespace BSPrintUtils {
3333
class BeamSpotRcdPrinter : public edm::one::EDAnalyzer<> {
3434
public:
3535
explicit BeamSpotRcdPrinter(const edm::ParameterSet& iConfig);
36-
~BeamSpotRcdPrinter() override;
36+
~BeamSpotRcdPrinter() override = default;
3737
void analyze(const edm::Event& evt, const edm::EventSetup& evtSetup) override;
3838
void endJob() override;
3939
static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
@@ -48,6 +48,8 @@ class BeamSpotRcdPrinter : public edm::one::EDAnalyzer<> {
4848
unsigned long long m_endTime;
4949
// Specify output text file name. Leave empty if do not want to dump beamspots in a file.
5050
std::string m_output;
51+
// decide if to print to screen the dump
52+
bool m_verbose;
5153
};
5254

5355
BeamSpotRcdPrinter::BeamSpotRcdPrinter(const edm::ParameterSet& iConfig)
@@ -56,13 +58,12 @@ BeamSpotRcdPrinter::BeamSpotRcdPrinter(const edm::ParameterSet& iConfig)
5658
m_tagName(iConfig.getParameter<std::string>("tagName")),
5759
m_startTime(iConfig.getParameter<unsigned long long>("startIOV")),
5860
m_endTime(iConfig.getParameter<unsigned long long>("endIOV")),
59-
m_output(iConfig.getParameter<std::string>("output")) {
61+
m_output(iConfig.getParameter<std::string>("output")),
62+
m_verbose(iConfig.getParameter<bool>("verbose")) {
6063
m_connectionPool.setParameters(iConfig.getParameter<edm::ParameterSet>("DBParameters"));
6164
m_connectionPool.configure();
6265
}
6366

64-
BeamSpotRcdPrinter::~BeamSpotRcdPrinter() {}
65-
6667
void BeamSpotRcdPrinter::analyze(const edm::Event& evt, const edm::EventSetup& evtSetup) {
6768
cond::Time_t startIov = m_startTime;
6869
cond::Time_t endIov = m_endTime;
@@ -112,7 +113,7 @@ void BeamSpotRcdPrinter::analyze(const edm::Event& evt, const edm::EventSetup& e
112113
edm::LogInfo("BeamSpotRcdPrinter") << "[BeamSpotRcdPrinter::" << __func__ << "] "
113114
<< "Read " << niov << " IOVs from tag " << m_tagName
114115
<< " corresponding to the specified time interval.\n\n"
115-
<< ss.str();
116+
<< (m_verbose ? ss.str() : std::string{});
116117

117118
condDbSession.transaction().commit();
118119

@@ -130,7 +131,8 @@ void BeamSpotRcdPrinter::fillDescriptions(edm::ConfigurationDescriptions& descri
130131
desc.add<std::string>("tagName", "BeamSpotObjects_PCL_byLumi_v0_prompt");
131132
desc.add<unsigned long long>("startIOV", 1406859487478481);
132133
desc.add<unsigned long long>("endIOV", 1406876667347162);
133-
desc.add<std::string>("output", "summary.txt");
134+
desc.add<std::string>("output", "summary.txt")->setComment("ASCII file with the full tag dump information");
135+
desc.add<bool>("verbose", true)->setComment("print to screen the dump of all the payloads");
134136
desc.add<std::string>("connect", "");
135137

136138
edm::ParameterSetDescription descDBParameters;

CondTools/BeamSpot/test/BeamSpotRcdPrinter_cfg.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,18 @@
1313
1406713458589700, # default value
1414
VarParsing.VarParsing.multiplicity.singleton, # singleton or list
1515
VarParsing.VarParsing.varType.int, # string, int, or float
16-
"location of the input data")
16+
"starting IOV since")
1717
options.register('endIOV',
1818
1406876667347162, # default value
1919
VarParsing.VarParsing.multiplicity.singleton, # singleton or list
2020
VarParsing.VarParsing.varType.int, # string, int, or float
21-
"location of the input data")
21+
"ending IOV since")
22+
options.register('verbose',
23+
True, # default value
24+
VarParsing.VarParsing.multiplicity.singleton, # singleton or list
25+
VarParsing.VarParsing.varType.bool, # string, int, or float
26+
"verbose output to screen")
27+
2228
options.parseArguments()
2329

2430
process.MessageLogger = cms.Service( "MessageLogger",
@@ -41,6 +47,7 @@
4147
process.BeamSpotRcdPrinter.tagName = options.inputTag
4248
process.BeamSpotRcdPrinter.startIOV = options.startIOV
4349
process.BeamSpotRcdPrinter.endIOV = options.endIOV
50+
process.BeamSpotRcdPrinter.verbose = options.verbose
4451
process.BeamSpotRcdPrinter.output = "summary.txt"
4552

4653
### 2018 Prompt

CondTools/BeamSpot/test/testReadWriteBeamSpotsFromDB.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ printf "TESTING Reading BeamSpotOnlineHLTObjectsRcd DB object ...\n\n"
3838
cmsRun ${SCRAM_TEST_PATH}/BeamSpotOnlineRecordsReader_cfg.py unitTest=True inputRecord=BeamSpotOnlineHLTObjectsRcd || die "Failure reading payload for BeamSpotOnlineHLTObjectsRcd" $?
3939

4040
printf "TESTING reading BeamSpotObjectRcd DB object ...\n\n"
41-
cmsRun ${SCRAM_TEST_PATH}/BeamSpotRcdPrinter_cfg.py || die "Failure running BeamSpotRcdPrinter" $?
41+
cmsRun ${SCRAM_TEST_PATH}/BeamSpotRcdPrinter_cfg.py startIOV=1406713458589700 endIOV=1614147494085159 verbose=False || die "Failure running BeamSpotRcdPrinter" $?
4242
cmsRun ${SCRAM_TEST_PATH}/BeamSpotRcdRead_cfg.py || die "Failure running BeamSpotRcdRead" $?
4343

4444
printf "TESTING converting BeamSpotOnlineObjects from BeamSpotObjects ...\n\n"

0 commit comments

Comments
 (0)