Skip to content

Commit c31b2ff

Browse files
committed
[metrics] Add flag to force report even for invalid SNs
1 parent 6d84908 commit c31b2ff

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

src/CommandLineUtilities/ProgramMetrics.cxx

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,9 @@ class ProgramMetrics : public Program
5252
options.add_options()("monitoring",
5353
po::bool_switch(&mOptions.monitoring),
5454
"Toggle monitoring metrics sending");
55+
options.add_options()("force-report",
56+
po::bool_switch(&mOptions.forceReport),
57+
"Force report for invalid serial numbers (doesn't send monitoring metrics)");
5558
}
5659

5760
virtual void run(const boost::program_options::variables_map& /*map*/)
@@ -95,11 +98,15 @@ class ProgramMetrics : public Program
9598
float localClock = bar2->getLocalClock() / 1e6;
9699
uint32_t totalPacketsPerSecond = bar2->getTotalPacketsPerSecond(bar0->getEndpointNumber());
97100

98-
if (card.serialId.getSerial() == 0x7fffffff || card.serialId.getSerial() == 0x0) {
101+
if (!mOptions.forceReport && (card.serialId.getSerial() == 0x7fffffff || card.serialId.getSerial() == 0x0)) {
99102
std::cout << "Bad serial reported, bad card state, exiting" << std::endl;
100103
return;
101104
}
102105

106+
if (mOptions.forceReport) {
107+
mOptions.monitoring = false; // force disable sending metrics with force
108+
}
109+
103110
if (mOptions.monitoring) {
104111
monitoring->send(Metric{ "card" }
105112
.addValue(card.pciAddress.toString(), "pciAddress")
@@ -150,6 +157,7 @@ class ProgramMetrics : public Program
150157
struct OptionsStruct {
151158
bool jsonOut = false;
152159
bool monitoring = false;
160+
bool forceReport = false;
153161
} mOptions;
154162
};
155163

0 commit comments

Comments
 (0)