 
 
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.
