CMS MessageLogger: Establishing a Destination to the cerr Stream

CMS MessageLogger Service
Establishing a Destination to the cerr Stream

process TEST = {

  service = MessageLogger {
    vstring destinations = {   "detailedInfo.txt"
                             , "critical.txt"
                             , "cout"
                             , "cerr"
                                             }
    PSet critical.txt     = { string threshold = "ERROR"   }
    PSet detailedInfo.txt = { string threshold = "INFO"    } 
    PSet cerr             = { string threshold = "WARNING" }
  }

  untracked PSet maxEvents = {untracked int32 input = 5}
  path p = { myAnalysisModule }
  module myAnalysisModule = ModuleThatIssuesMessages { }
  source = EmptySource { }
}
The { ..., "cerr", ... } in the list of destinations refers to message information streamed to std::cout rather than to a file named cerr.

It is possible for a message to be sent to cerr even though no such stream is listed in the configuration file, since any message sent before services are configured will go to a cerr destination. However, unless cerr appears in the configuration file as a destination, that destination will be turned off once the service has been configured.

The MessageLogger service provides no way to create a destination writing to an ordinary file named cout or cerr.

USCMS Software and Computing Home Page - CMS MessageLogger Service Page - Configuration File


Mark Fischler
Last modified: November 29, 2005