5 #include "cetlib/container_algorithms.h" 6 #include "cetlib/cpu_timer.h" 14 using std::setprecision;
20 workersInPathTriggerReport(
int const firstBit,
21 int const bitPosition,
24 for (
auto const& workerInPath : workersInPath) {
26 <<
"TrigReport " <<
right << setw(5) << firstBit <<
right << setw(5)
27 << bitPosition <<
" " <<
right << setw(10)
28 << workerInPath.timesVisited() <<
" " <<
right << setw(10)
29 << workerInPath.timesPassed() <<
" " <<
right << setw(10)
30 << workerInPath.timesFailed() <<
" " <<
right << setw(10)
31 << workerInPath.timesExcept() <<
" " 32 << workerInPath.getWorker()->description().moduleLabel();
37 workersInEndPathTriggerReport(
int const firstBit,
38 int const bitPosition,
41 for (
auto const& workerInPath : workersInPath) {
42 auto worker = workerInPath.getWorker();
44 <<
"TrigReport " <<
right << setw(5) << firstBit <<
right << setw(5)
45 << bitPosition <<
" " <<
right << setw(10) << worker->timesRun()
47 <<
right << setw(10) << worker->timesPassed() <<
" " <<
right 48 << setw(10) << worker->timesExcept() <<
" " 49 << worker->description().moduleLabel();
56 bool const wantSummary,
57 cet::cpu_timer
const& jobTimer)
74 bool const wantSummary)
78 LogPrint(
"ArtSummary") <<
"TrigReport " 79 <<
"---------- Event Summary ------------";
80 LogPrint(
"ArtSummary") <<
"TrigReport" 86 LogPrint(
"ArtSummary") <<
"TrigReport " 87 <<
"---------- Path Summary ------------";
88 LogPrint(
"ArtSummary") <<
"TrigReport " <<
right << setw(10) <<
"Trig Bit#" 89 <<
" " <<
right << setw(10) <<
"Run" 90 <<
" " <<
right << setw(10) <<
"Passed" 91 <<
" " <<
right << setw(10) <<
"Failed" 92 <<
" " <<
right << setw(10) <<
"Error" 95 for (
auto const& path : tpi.
pathPtrs()) {
97 <<
"TrigReport " <<
right << setw(5) << 1 <<
right << setw(5)
98 << path->bitPosition() <<
" " <<
right << setw(10) << path->timesRun()
99 <<
" " <<
right << setw(10) << path->timesPassed() <<
" " <<
right 100 << setw(10) << path->timesFailed() <<
" " <<
right << setw(10)
101 << path->timesExcept() <<
" " << path->name();
104 LogPrint(
"ArtSummary") <<
"TrigReport " 105 <<
"-------End-Path Summary ------------";
106 LogPrint(
"ArtSummary") <<
"TrigReport " <<
right << setw(10) <<
"Trig Bit#" 107 <<
" " <<
right << setw(10) <<
"Run" 108 <<
" " <<
right << setw(10) <<
"Success" 109 <<
" " <<
right << setw(10) <<
"Error" 112 for (
auto const& path : epi.
pathPtrs()) {
114 <<
"TrigReport " <<
right << setw(5) << 0 <<
right << setw(5)
115 << path->bitPosition() <<
" " <<
right << setw(10) << path->timesRun()
116 <<
" " <<
right << setw(10) << path->timesPassed() <<
" " <<
right 117 << setw(10) << path->timesExcept() <<
" " << path->name();
119 for (
auto const& path : tpi.
pathPtrs()) {
123 <<
"---------- Modules in Path: " << path->name() <<
" ------------";
125 <<
"TrigReport " <<
right << setw(10) <<
"Trig Bit#" 126 <<
" " <<
right << setw(10) <<
"Visited" 127 <<
" " <<
right << setw(10) <<
"Passed" 128 <<
" " <<
right << setw(10) <<
"Failed" 129 <<
" " <<
right << setw(10) <<
"Error" 132 workersInPathTriggerReport(1, path->bitPosition(), path->workersInPath());
137 for (
auto const& path : epi.
pathPtrs()) {
139 LogPrint(
"ArtSummary") <<
"TrigReport " 140 <<
"------ Modules in End-Path: " << path->name()
142 LogPrint(
"ArtSummary") <<
"TrigReport " <<
right << setw(10) <<
"Trig Bit#" 143 <<
" " <<
right << setw(10) <<
"Run" 144 <<
" " <<
right << setw(10) <<
"Success" 145 <<
" " <<
right << setw(10) <<
"Error" 148 workersInEndPathTriggerReport(
149 0, path->bitPosition(), path->workersInPath());
156 LogPrint(
"ArtSummary") <<
"TrigReport " 157 <<
"---------- Module Summary ------------";
158 LogPrint(
"ArtSummary") <<
"TrigReport " <<
right << setw(10) <<
"Visited" 159 <<
" " <<
right << setw(10) <<
"Run" 160 <<
" " <<
right << setw(10) <<
"Passed" 161 <<
" " <<
right << setw(10) <<
"Failed" 162 <<
" " <<
right << setw(10) <<
"Error" 166 for (
auto const& val : tpi.
workers()) {
168 <<
"TrigReport " <<
right << setw(10) << val.second->timesVisited()
169 <<
" " <<
right << setw(10) << val.second->timesRun() <<
" " <<
right 170 << setw(10) << val.second->timesPassed() <<
" " <<
right << setw(10)
171 << val.second->timesFailed() <<
" " <<
right << setw(10)
172 << val.second->timesExcept() <<
" " << val.first;
175 for (
auto const& val : epi.
workers()) {
180 <<
"TrigReport " <<
right << setw(10) << val.second->timesVisited()
181 <<
" " <<
right << setw(10) << val.second->timesRun() <<
" " <<
right 182 << setw(10) << val.second->timesPassed() <<
" " <<
right << setw(10)
183 << val.second->timesFailed() <<
" " <<
right << setw(10)
184 << val.second->timesExcept() <<
" " << val.first;
192 LogPrint(
"ArtSummary") <<
"TimeReport " 193 <<
"---------- Time Summary ---[sec]----";
194 LogPrint(
"ArtSummary") <<
"TimeReport " << setprecision(6) << fixed
195 <<
"CPU = " << timer.cpuTime()
196 <<
" Real = " << timer.realTime();
void triggerReport(PathsInfo const &endPathsInfo, PathsInfo const &triggerPathsInfo, bool wantSummary)
constexpr auto const & right(const_AssnsIter< L, R, D, Dir > const &a, const_AssnsIter< L, R, D, Dir > const &b)
size_t passedEvents() const
size_t failedEvents() const
std::vector< WorkerInPath > WorkersInPath
WorkerMap const & workers() const
void writeSummary(PathManager &pm, bool wantSummary, cet::cpu_timer const &timer)
size_t totalEvents() const
PathsInfo & endPathInfo()
PathsInfo & triggerPathsInfo(ScheduleID sID)
void timeReport(cet::cpu_timer const &timer)
PathPtrs const & pathPtrs() const
MaybeLogger_< ELseverityLevel::ELsev_warning, true > LogPrint