373 {
374
376
377 list<string>::const_iterator itr;
378
381 ofs << " " << *itr << endl;
382 }
383
384 ofs <<
"Files written: " <<
m_outputFiles.size() << std::endl;
386 ofs << " " << *itr << endl;
387 }
388
391 ofs << " " << *itr << endl;
392 }
393
397
398 ofs <<
"Runs: " <<
m_runs << endl;
399
400
401 ofs << "Message Count: " << endl;
402 ofs <<
" FATAL: " <<
msgSvc()->messageCount( MSG::FATAL ) << endl;
403 ofs <<
" ERROR: " <<
msgSvc()->messageCount( MSG::ERROR ) << endl;
404 ofs <<
" WARNING: " <<
msgSvc()->messageCount( MSG::WARNING ) << endl;
405 ofs <<
" INFO: " <<
msgSvc()->messageCount( MSG::INFO ) << endl;
406
408
409 IntegerProperty
thresh(
"loggingLevel",MSG::VERBOSE);
410 IProperty *
ip =
dynamic_cast<IProperty*
>(
p_logMsg );
411 if (ip != nullptr) {
412 if (
ip->getProperty(&thresh).isFailure()) {
413 ATH_MSG_ERROR(
"could not get loggingLevel property of LoggedMessageSvc");
414 }
415 } else {
416 ATH_MSG_ERROR(
"could not dcast LoggedMessageSvc to IProperty");
417 }
418
419
420
421 ofs << "Message Log: " << endl;
422 vector<pair<string,string> > msgs;
423 vector<pair<string,string> >::const_iterator mitr;
424 for (
unsigned int l=
thresh.value(); l < MSG::ALWAYS; l++) {
426 msgs =
p_logMsg->getMessages( MSG::Level(l) );
427 ofs << " " << msgs.size() << endl;
428 for (mitr=msgs.begin(); mitr != msgs.end(); ++mitr) {
429 ofs << " " << mitr->first << " : " << mitr->second << endl;
430 }
431 }
432
433 ofs << "Keyword tracked messages: " << endl;
434 for (
const auto&
msg :
p_logMsg->getKeyMessages()) {
437 <<
" " <<
msg.message
438 << endl;
439 }
440
441 }
442
444 ofs << "Extra Summary Info:" << endl;
445 vector<pair<string,string> >::const_iterator itr (
m_extraInfo.begin() );
447 ofs << " " << itr->first << " : " << itr->second << endl;
448 }
449 }
450
452 ofs << "Extra Incident Counts:" << endl;
453 map<string, map<string,int> >::const_iterator itr(
m_extraIncidents.begin());
455 ofs << " " << itr->first;
456 if (itr->second.begin() == itr->second.end()) {
457 ofs << " : 0" << endl;
458 } else {
459 for (map<string,int>::const_iterator it=itr->second.begin();
460 it != itr->second.end(); ++it) {
461 ofs <<
" :: " <<
it->first <<
":" <<
it->second;
462 }
463 ofs << endl;
464 }
465 }
466 }
467
468 if (s_badalloc) {
469 ofs << "std::bad_alloc caught: out of memory condition detected"
470 << endl;
471 }
472
473 ofs <<
"Exit Status: " <<
m_status << endl;
474
475
476}
static const std::string levelNames[MSG::NUM_LEVELS]
std::list< std::string > m_outputFilesError
unsigned int m_eventsWritten
std::list< std::string > m_inputFilesRead
std::list< std::string > m_outputFiles
ILoggedMessageSvc * p_logMsg
unsigned int m_eventsRead
unsigned int m_eventsSkipped
l
Printing final latex table to .tex output file.
msgSvc
Provide convenience handles for various services.