CMS MessageLogger: Setting Limits By Severity Level

Setting Limits By Severity Level

process TEST = {

  service = MessageLogger {
    vstring destinations = { "detailedInfo.txt"
			   , "critical.txt"
			   , "jobdebug.txt"
			   , "anotherfile.txt"
			   , "cout"
			   , "cerr"
			   }
    vstring categories = { "unimportant"
			 , "trkwarning"
 			 , "serious_matter"
                         }
    PSet critical.txt = { string threshold = "ERROR"
                               PSet default = { int32 limit    = 10
			                        int32 timespan = 180
					      }
			      PSet serious_matter = { int32 limit = 100000 }
                        }
    PSet detailedInfo.txt = { string threshold = "INFO"
			      PSet default        = { int32 limit    =  10
					              int32 timespan =  60
					            }
			      PSet WARNING        = { int32 limit    = 100
			                              int32 timespan =  60 
					            }
			      PSet ERROR          = { int32 limit    = 100
			                              int32 timespan =  60 
					            }
			      PSet trkwarning     = { int32 limit    = 20
			                              int32 timespan = 1200
						    }
			      PSet unimportant    = { int32 limit    = 5 }
			      PSet serious_matter = { int32 limit    = 1000000 }
                            }
    PSet cerr     = { string threshold = "WARNING" }

    PSet jobdebug.txt =     { PSet default        = { int32 limit    = 1000000 }
                            }
    PSet anotherfile.txt =  { PSet serious_matter = { int32 limit    = 1000 } 
                            }
    PSet default = { int32 limit    = 10
                     int32 timespan = 60
		   }
  }
  untracked PSet maxEvents = {untracked int32 input = 10}
  path p = { myAnalysisModule }
  module myAnalysisModule = ModuleThatIssuesMessages { }
  source = EmptySource { }
}
Each destination can (in addition to limits by message ID) be configured to react to only some limited number of messages of a specified severity level. For example, detailedInfo.txt would react to only the first 100 messages issued via edm::LogWarning(...), and the first 100 issued via edm::LogError(...), with exponential backoff thereafter. (Typically, one might limit the number of INFO or WARNING messages and let all the ERROR messages emerge.)

A message can be ignored because the limit for that severity is exceeded, or because the limit for that ID is exceeded.

Establishing limits by severity level is always optional.

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


Mark Fischler
Last modified: Dec 1, 2005